Dies liegt daran, dass Zahlen, die mit 0 beginnen, von PHP als Oktal betrachtet werden, gemäß:http://php.net/manual/en/language.types.integer.php
Es scheint, dass PHP die Zahl in eine Dezimalzahl umwandelt, bevor die MySQL-Abfrage ausgeführt wird, was bedeutet, dass die Abfrage mit einer falschen Zahl gebildet wird.
Zum Beispiel:
Support::find(02155);
Wird:
'SELECT * FROM mytable WHERE id = 1133'
Die Lösung
Ich habe dies gelöst, indem ich die Zahl mit (int) in eine Ganzzahl umgewandelt habe, bevor ich sie mit der Find-Methode von Eloquents verwendet habe. Es funktioniert auch, wenn Sie die Zahl als Zeichenfolge (d. h. in Anführungszeichen) übergeben, etwa so:
Support::find('02155');