如何在PHP中按字母顺序排序$ _POST请求

时间:2010-02-23 05:31:34

标签: php sorting

我正在查看http://www.php.net/manual/en/array.sorting.php作为参考。我正在尝试通过键对$ _POST进行排序。这是我正在尝试的,但它只打印“1”。还有什么需要发生,或者缺少什么?感谢。

<?php
    $data = krsort($_POST);
    print_r( $data );
?>

4 个答案:

答案 0 :(得分:3)

krsort返回布尔值 - 成功时为TRUE,失败时返回FALSE。试试print_r($_POST);,看看会发生什么 - 数组应该排序!

答案 1 :(得分:2)

ksort()的返回值为true或value,无论排序是否成功,而不是排序数组。

尝试:

<?php
    krsort($_POST);
    print_r( $_POST );
?>

答案 2 :(得分:2)

数组排序功能通常会就地修改数组 - 因此您需要print_r($_POST)。你现在得到1作为输出的原因是因为sort函数的返回值是一个状态代码,表明数组是否能够正确排序 - 1表示成功。

答案 3 :(得分:0)

从技术上讲,这些都不正确。 ksort()和krsort()按键排序,是的,但它不是按字母顺序排列的 - 它从低到高,从高到低。

这个:数组(“iPhone”,“Android”,“Symbian”)

将订购元素Android,Symbian然后iPhone由于从低到高的事实不会忽略大小写。

要按键按字母顺序对数组进行排序,您必须执行用户定义的uksort()