Is there a (simple) way to convert an Eloquent Collection to an actual array without converting the elements themselves?
I get in trouble when I try to pass the collection into a php method like array_rand($collection)
. This gives me the error: array_rand() expects parameter 1 to be array, object given
.
I worked around this by using $collection->shuffle()->first();
which works fine and of course I could loop over the collection and push all in an array, but just out of curiosity I wonder if I'm overlooking something.
SomeModel::all()
was already the same. But now I see that I need to do another all-call on the result:SomeModel::all()->all()
. – Bothnia