0

再会。

我想从 $arr 获取 3 个键,其中 $arN[0] 的值将比其他键多...

代码:

$ar1=array(201,281);
$ar2=array(1252760,1359724);
$ar3=array(452760,34349724);
$ar4=array(1260,134344);
$ar5=array(232750,1359724);
$ar6=array(60,1439724);

$arr[]=array(6299927 => $ar1);
$arr[]=array(1252760 => $ar2);
$arr[]=array(3432444 => $ar3);
$arr[]=array(3435543 => $ar4);
$arr[]=array(7645466 => $ar5);
$arr[]=array(4574534 => $ar6);

下一个函数排序数组 $a 降序:

function cmp($a, $b)
{
    if ($a == $b) {
        return 0;
    }
    return ($a < $b) ? 1 : -1;
}

$a = array(3, 2, 5, 6, 1);

usort($, "cmp");

foreach ($a as $key => $value) {
    echo "$key: $value\n";
}
outpoot: 0:6 1:5 2:4 3:2 4:1

但是如何为我的示例更改此函数(对于我的大数组)?

请告诉我这是怎么做的?

怎么写对?

4

3 回答 3

0
$dates = array();
foreach ($arr as $key => $row) {
    $subkeys = array_keys($row); // Elements are one-element associative arrays
    $dates[$key]  = $row[$subkeys[0]][0]; // Get the element, then get its [0] sub-element

}
array_multisort($dates, SORT_DESC, $arr);
print_r($arr);
于 2013-06-29T02:21:07.020 回答
0

非常令人困惑,但我认为您正在寻找这样的东西。它将为您提供第一项大于下一个数组中的第一项的数组的索引。

foreach($arr as $key => $array) {
    if($array[0] > $arr[$key+1][0]) {
       echo $key;
    }
}
于 2013-06-29T01:57:57.410 回答
0
$ans_array= array();

            // for shuffle array without repeat
            for($q=0;$q<count($arr);$q++)
            {
                $n = rand(0,count($arr));
                if($ans_array[$n] == NULL || $ans_array[$n] == '')
                {   
                     $ans_array[$n] = $arr[$q];
                }
                else
                {     if($q==0) $q=0;
                      else $q = $q-1;
                }
            }
于 2016-10-20T09:31:36.023 回答