yooll написав:Тобто якщо прибрати коментарі і замінити function mySort на, наприклад, function mySort2, то все працює?
так.
з коментарями - сортування відбувається , тобто використовується описана в іншому сніпеті функція.
відкривши коментарі - отримую білий екран.
помінявши mySort на myNewSort
<?php
$parentID=0;
$menu_h = $modx->getCollection('modResource', array('parent' => $parentID,'hidemenu'=>0,'published'=>1));
/*
function mySort($mi1,$mi2) {
if($mi1->menuindex < $mi2->menuindex) return -1;
elseif($mi1->menuindex > $mi2->menuindex) return 1;
else return 0;
}
*/
function myNewSort($mi1,$mi2) {
if($mi1->menuindex < $mi2->menuindex) return 1;
elseif($mi1->menuindex > $mi2->menuindex) return -1;
else return 0;
}
print 'вивід елементів несортованого масиву';
foreach($menu_h as $r) {
print "<br /> Page ID ".$r->id."Menu title: ". $r->menutitle." menuindex:".$r->menuindex;
}
echo '<hr/><br/>';
print 'вивід елементів сортованого в зворотньому порядку масиву (по myNewSort)';
uasort($menu_h,"myNewSort");
foreach($menu_h as $r) {
print "<br /> Page ID ".$r->id."Menu title: ". $r->menutitle." menuindex:".$r->menuindex;
}
echo '<hr/><br/>';
print "вивід елементів сортованого в прямому порядку масиву <br/>
(по mySort, яка описана і викликається раніше в іншому сніпеті) ";
uasort($menu_h,"mySort");
foreach($menu_h as $r) {
print "<br /> Page ID ".$r->id."Menu title: ". $r->menutitle." menuindex:".$r->menuindex;
}
echo '<hr/>';
ось результат:
вивід елементів несортованого масиву
Page ID 1Menu title: Home menuindex:0
Page ID 2Menu title: About menuindex:99
Page ID 3Menu title: Product menuindex:2
Page ID 7Menu title: Articles menuindex:3
Page ID 8Menu title: Gallery menuindex:80
вивід елементів сортованого в зворотньому порядку масиву (по myNewSort)
Page ID 2Menu title: About menuindex:99
Page ID 8Menu title: Gallery menuindex:80
Page ID 7Menu title: Articles menuindex:3
Page ID 3Menu title: Product menuindex:2
Page ID 1Menu title: Home menuindex:0
вивід елементів сортованого в прямому порядку масиву
(по mySort, яка описана і викликається раніше в іншому сніпеті)
Page ID 1Menu title: Home menuindex:0
Page ID 3Menu title: Product menuindex:2
Page ID 7Menu title: Articles menuindex:3
Page ID 8Menu title: Gallery menuindex:80
Page ID 2Menu title: About menuindex:99