Bắt đầu từ Bộ sưu tập, tôi cần lấy một mảng giá trị của một trường cụ thể..cho tôi gọi trường này là my_id
.Bộ sưu tập Magento, cách lấy mảng giá trị của một trường cụ thể
Để làm điều này, tôi sử dụng Varien_Data_Collection::setDataToAll()
trên Collection..in của tôi theo cách này:
$collection_fields_array = $collection->setDataToAll(array('my_id'))->toArray(array('my_id'));
..what tôi có được là một cái gì đó như thế này:
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
)
)
But..if của tôi Bộ sưu tập có chứa một số lượng lớn các mục .. setDataToAll()
trở nên quá tốn thời gian và cuối cùng làm hỏng tất cả 2Gb (!!!) bộ nhớ ... điều này là do sự lặp lại của nó giữa tất cả các mục.
Một cách khác để có được một mảng giá trị trường mà không có cách giải quyết này?
Yes..this là một tập hợp của tất cả các đơn đặt hàng cho tôi. Những gì bạn đề nghị có thể là một giải pháp tốt ... nhưng tiếc là tôi không thể lọc chúng theo ngày..Tôi cần toàn bộ bộ: ( – Zoba82
Nhưng cùng một lúc? Bạn không thể nhận được một tháng, lặp lại và làm bất cứ điều gì, nhận được tháng tiếp theo và làm bất cứ điều gì, vv? Nếu không, bạn có nhớ cập nhật câu hỏi để giải thích chi tiết hơn không? Có một số cách chúng ta có thể làm được điều đó. – Mike