http://php.net/manual/en/function.usort.php
function cmp($a, $b)
{
if ($a['sıralamayuzdesi'] == $b['sıralamayuzdesi']) {
return 0;
}
return ($a['sıralamayuzdesi'] > $b['sıralamayuzdesi']) ? -1 : 1;
}
usort($dizi, "cmp");
kolay gelsin.
Hocam sağolda bu sadece bana -1 veya 1 döndürür ben dizinin sıralanmış şeklini istiyorum. Yani bana büyükten küçüğe dönmüş şekilde gelecek bense foreach ile yazdırmak kalacak diziyi.
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 21:02:57 -->-> Daha önceki mesaj 20:41:07 --
<?php
$a = 23;
$b = 24;
$c = 25;
$dizi[0] = array('a' => $a, 'b' => $b, 'c' => $c,'sıralamayuzdesi' => '100');
$dizi[1] = array('a' => $a, 'b' => $b, 'c' => $c,'sıralamayuzdesi' => '55');
$dizi[2] = array('a' => $a, 'b' => $b, 'c' => $c,'sıralamayuzdesi' => '45');
$tmpArray = array();
foreach($dizi as $key => $value){
$tmpArray[$key] = $value['sıralamayuzdesi'];
}
array_multisort($tmpArray, SORT_DESC, $dizi);
echo '<pre>';
print_r($dizi);
echo '</pre>';
?>Çıktı
Array ( [0] => Array ( [a] => 23 [b] => 24 [c] => 25 [sıralamayuzdesi] => 100 ) [1] => Array ( [a] => 23 [b] => 24 [c] => 25 [sıralamayuzdesi] => 55 ) [2] => Array ( [a] => 23 [b] => 24 [c] => 25 [sıralamayuzdesi] => 45 ) )
Böyle yaptım teşekkürler.