Начиная с коллекции, мне нужно получить массив значений определенного поля. Позвольте мне вызвать это поле my_id
.
Для этого я использую Varien_Data_Collection::setDataToAll()
в моей коллекции.. следующим образом:
$collection_fields_array = $collection->setDataToAll(array('my_id'))->toArray(array('my_id'));
.. Я получаю что-то вроде этого:
Array
(
[0] => Array
(
[my_id] => 71e1bd18
)
[1] => Array
(
[my_id] => 70d47a69
)
[2] => Array
(
[my_id] => 687bed84
)
[3] => Array
(
[my_id] => 673df159
)
[4] => Array
(
[my_id] => 66690a4c
)
[5] => Array
(
[my_id] => 65994440
)
)
Но.. если моя коллекция содержит большое количество элементов. setDataToAll()
становится слишком трудоемким и, наконец, сбрасывает все память 2Gb (!!!)... это потому, что итерация между всеми элементами.
Другой способ получить массив значений полей без этого обхода?