Ola ki ihtiyacınız oldu ve veritabanından rastgele kullanıcı çekmek istiyorsunuz. Ya da makale. Bunun için Laravel’de inRandomOrder() metodu var. Hem Eloquent içerisinde hem de Query Builder’da bunu kullanabilirsiniz. (Not Laravel 5.2 ve üstü için geçerlidir)
Şöyle ki:
$randomUser = DB::table('users')
->inRandomOrder()
->first();
İsterseniz where ile şart sağlayarak da kullanabilirsiniz. Mesela aktif kullanıcı hariç rastgele kullanıcı getir demek için:
$randomUser = DB::table('users')
->where('id','<>',Auth::user()->id)
->inRandomOrder()
->first();
Bir tane de Eloquent için:
User::where('id','<>',Auth::user()->id)
->inRandomOrder()
->first();
Sadece 5 tane getirmesi için:
User::where('id','<>',Auth::user()->id)
->inRandomOrder()
->take(5)
->get();
Etiketler: