#php #laravel
#php #laravel
Вопрос:
У меня есть массив в переменной, который содержит около 700 имен. Перебор 700 имен может быть проблемой, поскольку массив большой и может вызвать задержку, поэтому я хочу использовать chunk, чтобы увидеть, не будет ли задержки в моем приложении.
В моем коде ниже, когда я запускаю приложение, оно выдает ошибку
Вызов функции-члена chunk() в массиве — Laravel
Возможно ли, что я мог бы разбить данные на части и выполнить итерацию по частям, чтобы приложение не зависало из-за больших объемов данных?
PS: Я новичок в laravel PHP и прошу прощения за мой плохой английский.
Controller.php
$myData = $arrayList->chunk(ceil(($arrayList->count())/5));
foreach($chunks as $chunk){
Log::info('Chunking My Data');
Log::info($chunk);
}
Комментарии:
1.Сначала измените массив на коллекцию, затем вызовите chunk .
collect($arrayList)->chunk(5)
laravel.com/docs/8.x/collections#method-chunk
Ответ №1:
Вы можете использовать встроенную функцию array_chunk, например:
$myData = range(1, 10000);
foreach (array_chunk($myData, ceil(count($myData)/5)) as $chunk) {
var_dump($chunk);
}