<?php
$array = array(5,18,26,37,9,42,88,67);
$array1 = sort($array);
print_r($array1);//result is 1
foreach($array as $i)
{
print_r($i)."&nbsp;&nbsp;";
}
?>为什么$array1的结果是1,而不是$array排序完输出的结果?

解决方案 »

  1.   

    bool sort ( array &$array [, int $sort_flags] )
    sort函数,返回1表明,排序成功.
    顺序改变已经反映到$array数组里.
      

  2.   

    http://cn.php.net/manual/en/function.sort.php
    手册上写的:Description
    bool sort ( array &$array [, int $sort_flags= SORT_REGULAR ] )This function sorts an array. Elements will be arranged from lowest to highest when this function has completed.
      

  3.   

    sort
    (PHP 3, PHP 4, PHP 5)sort -- 对数组排序
    说明
    bool sort ( array &array [, int sort_flags] )
    ================================================
    函数就是这么用的,传的参数是引用.非值
      

  4.   

    没错啊,你看sort()的$array数组已经排序了
      

  5.   

    <?php
    $array = array(5,18,26,37,9,42,88,67);
    sort($array);
    print_r($array);//result is 1
    echo "<br>";
    foreach($array as $i)
    {
        print_r($i)."&nbsp;&nbsp;";
    }
    ?>sort()函数返回布尔值(bool)TRUE or FALSE
    所有 $array1 得到的是 true
      

  6.   

    sort函数,返回排序成功 或失败.