array_multisort($vSort,SORT_ASC,$vModu,SORT_ASC,$NewNavigation);
//上面这行代码是不是错的啊,第三个参数不应该是变量,如果没有的话应该用null代替对吗
//虽然如此,上面的代码还能运行,但是想不通为什么第三个参数不用null

解决方案 »

  1.   

    $vModu-->规定排序类型。可能的值是SORT_REGULAR、SORT_NUMERIC和SORT_STRING。
    如果没有的话什么都不填,例如array_multisort($vSort,SORT_ASC,,SORT_ASC,$NewNavigation);
      

  2.   

    语法是:
    array_multisort(array1,sorting order,sorting type,array2,array3...)
    array1是要排序的数组名
    sorting order是指定是顺序还是逆序排列,类似于SQL语句的order by ...asc|desc子句
    sorting type是指定排序以数字还是字母等来排,可以省略
    array2,array3是指可以再次指定要排序的数组,由于可以省略sorting order 与osrting type,所以上面的例句中最后是一个变量则不会出错,默认按SORT_ASC以及SORT_REGULAR来进行排序
      

  3.   

    对啊,但是我将$vModu输出一看,和第一个参数$vSort一样,也是一个一维数组,而不是SORT_REGULAR、SORT_NUMERIC和SORT_STRING,百思不得其解啊
      

  4.   

    不对!
    如果没有的话,就什么也不写原型
    bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] )
    其中被“[]”括起的部分表示可以缺省,当你选择默认值的时候就什么也不写就可以了
      

  5.   


    我明白了,
    感谢xuzuning