Если вы когда-нибудь сталкивались с проблемой вывода всех значений товарного атрибута из EAV модели, то следующее решение поможет вам.

Модель сущность-атрибут-значение (entity attribute value) представляет собой модель хранения данных, в которой имеется некая сущность и связанный с ней набор атрибутов (свойств, параметров). В математике эта модель известна как модель разреженных матриц. Если хранить экземпляр сущности в обычной реляционной базе данных, то у нас появится большое количество пустых столбцов и строк, что нам совсем не нужно. Разреженная матрица - это матрица в которой большинство элементов нулевые. Благодаря особым алгоритмам учитывающим разреженность такие матрицы легко сжимаются и требуют меньше ресурсов компьютера для обработки.

Итак, давайте посмотрим как получить все значения атрибута из EAV структуры.



     $attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'color'); //здесь, "color" это код атрибута
     $allOptions = $attribute->getSource()->getAllOptions(true, true);

     foreach ($allOptions as $instance) {
       $myArray[$instance['value']] = $instance['label'];
     }
     Mage::log($myArray);


Теперь вы получите список значений атрибута цвет как массив MyArray в формате value => label.