find() will always retrieve data per primary key (define in the model). The key on your array is not used, and is not intended to be a column name.
So yes you get data, but maybe not the data you wanted.
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
I found out that find is more relaxing if the column does not exist. Where/get will give QueryException. Is the find behavior expected?
// tid column does not exit
App\User::find(['tid' => 1]); -> return Illuminate\Database\Eloquent\ Collection
App\User::where(['tid' => 1])->get(); -> throw QueryException
Please or to participate in this conversation.