Я использую CakePHP для создания системы баз данных продуктов. В CakePHP у меня есть массив всех продуктов в таблице продуктов. Каждый продукт (элемент в массиве "products") имеет функцию "toArray()". Это преобразует продукт в ассоциативный массив. Как я могу взять массив всех продуктов и добавить "toArray()" каждого продукта в новый массив. Это мой текущий поток:
$products = [$product1, $product2, $product3];
$newArr = [];
foreach($products as $product) {
$newArr[] = $product->toArray();
}
Есть ли один-лайнер для чего-то подобного?
Я не думаю, что вы могли бы полностью использовать это (без его функционализации, так или иначе), но вам не нужно дублировать данные, если вам не нужно сохранять исходный формат, а также переформатированную версию.
foreach($products as $key => $product){
$products[$key] = $product->toArray();
}
Изменит ваш существующий массив на переформатированную версию.