asort(arrivalTime[])
不正确。当我全部归零时如何解决这个问题?显示是:
Array
(
[4] => 0
[3] => 0
[2] => 0
[1] => 0
[0] => 0
)
它应该是这样的,不会影响索引...因为当所有零都不需要排序......
Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
[4] => 0
)
当我输入另一个没有为零时,这将是结果
Array
(
[0] => 0
[2] => 0
[1] => 0
[3] => 1
[4] => 2
)
任何人都可以有另一种解决方案吗?
修改 当我使用ksort()这是结果...当我输入0,2,1 这是简单的代码
<?php
$test = array(0,2,1);
ksort($test);
echo "<pre>";
print_r($test);
echo "</pre>";
?>
输出是bug
Array
(
[0] => 0
[1] => 2
[2] => 1
)
我想要的只是当我放0,0,0,1并且不更改密钥时因为它是相同的...
Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
)
然后另一个输入是0,2,1,3
Array
(
[0] => 0
[2] => 1
[1] => 2
[3] => 3
)
答案 0 :(得分:1)
使用ksort()
函数按键对数组进行排序。
答案 1 :(得分:0)
对于您的问题,请使用ksort()
作为manual。
ksort(arrivalTime []);
Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
[4] => 0
)
按键对数组进行排序,保持数据关联的关键。
$test = array(0,2,1,3);
arsort($test);
echo "<pre>";
print_r($test);
echo "</pre>";
$test = array(0,0,0,1);
ksort($test);
echo "<pre>";
print_r($test);
echo "</pre>";
if($test == array(0,0,0,1)){
ksort($test);
} else{
asort($test);
}
echo "<pre>";
print_r($test);
echo "</pre>";