Когато се потопите в документацията на mysql и потърсете функционалността RAND(), ще видите, че можете да използвате "seed".
Използвайки семена, винаги ще получавате едни и същи резултати, които са рандомизирани.
Пример:
$products = Product
::all()
->orderBy(DB::raw('RAND(1234)'))
->paginate(4);
Можете да генерирате свое собствено начало и да го съхранявате в сесия или нещо, за да го запомните.
Актуализиране
Конструкторът на заявки в Laravel сега има функция, която прави точно същото:
$products = Product
::all()
->inRandomOrder('1234')
->paginate(4);