Добавить свойство каждого элемента в массиве в новый массив

0

Я использую CakePHP для создания системы баз данных продуктов. В CakePHP у меня есть массив всех продуктов в таблице продуктов. Каждый продукт (элемент в массиве "products") имеет функцию "toArray()". Это преобразует продукт в ассоциативный массив. Как я могу взять массив всех продуктов и добавить "toArray()" каждого продукта в новый массив. Это мой текущий поток:

$products = [$product1, $product2, $product3];
$newArr = [];
foreach($products as $product) {
    $newArr[] = $product->toArray();
}

Есть ли один-лайнер для чего-то подобного?

  • 0
    спасибо @quickshiftin, это прошло прямо над моей головой.
Теги:
cakephp

1 ответ

1
Лучший ответ

Я не думаю, что вы могли бы полностью использовать это (без его функционализации, так или иначе), но вам не нужно дублировать данные, если вам не нужно сохранять исходный формат, а также переформатированную версию.

foreach($products as $key => $product){
    $products[$key] = $product->toArray();
}

Изменит ваш существующий массив на переформатированную версию.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню