我想排序我的数组

时间:2014-04-15 12:01:45

标签: php sorting

我想将我的数组排序为newarray。如何删除带有第一个最小数字的数组条目?

<?php
$array = array(8, 2, 4, 1, 5, 3, 7);
$newarray = array();
$array_size = count ($array);


for ($i = 0; $i<$array_size; $i++) {

        $smallestNumber = min($array);
        $array2[] = $smallestNumber;
        unset($array[$smallestNumber]);
}

print_r($array2);
?>

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

<?php

$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val) {
    echo "fruits[" . $key . "] = " . $val . "\n";
}

?>

答案 2 :(得分:0)

它是次优的(因为它遍历数组多次 - 一次用于查找最小值,一次用于查找其索引),但是您可以使用最初发布的代码执行此操作以使其工作:

<?php
$array = array(8, 2, 4, 1, 5, 3, 7);
$newarray = array();
$array_size = count ($array);


for ($i = 0; $i<$array_size; $i++) {

        $smallestNumber = min($array);
        $smallestIndex = array_search($smallestNumber, $array)
        $newarray[] = $smallestNumber;
        unset($array[$smallestIndex]);
}

print_r($newarray);
?>