Сортировка при сравнении

Sergua

Писатель
Регистрация
17 Авг 2011
Сообщения
2
Реакции
0
Подскажите, как изменить порядок сортировки при сравнении товаров?
У меня при сравнении сортировка обратная той, которая в каталоге...
 
Сравнение производится в файлике
\published\SC\html\scripts\modules\products\_metods\comparison_products.php
Вот формирование списка продуктов в самом начале файла:
PHP:
$productIDArray = explode( " ", trim(isset($PostVars["comparison_products"])?$PostVars["comparison_products"]:'') );
$showProductCategoryPath = true;
$products = array();
foreach( $productIDArray as $_productID ){
...
}
Далее подгружаются только свойства продуктов.
Шаблон для отображения smarty "comparison_products.html" погружается в конце скрипта.
Собственно необходимо сделать сортировку массива $products, или сразу после его загрузки скриптом выше, или перед подгрузкой его в smarty, в зависимости от критерия сортировки.
Сортировку можно осуществить функциями php:
uasort — Sort an array with a user-defined comparison function and maintain index association
uksort — Sort an array by keys using a user-defined comparison function
 
Спасибо, мучился 2 дня, но получилось!
Нужно в самом низу указанного выше файла, перед четырьмя $smarty вставить:
PHP:
function cmp($x, $y) 
{ 
if ( $x[sort_order] == $y[sort_order] ) 
return 0; 
else if ( $x[sort_order] < $y[sort_order] ) 
return -1; 
else 
return 1; 
}  
usort($products, cmp);
если Вы хотите сортировать по "порядку сортировки" если хотите сортировать по названию то вместо [sort_order] нужно написать [name_ru] и т.д.
 
Назад
Сверху