加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP按字母顺序排序

发布时间:2020-12-13 17:15:52 所属栏目:PHP教程 来源:网络整理
导读:我在这个上苦苦挣扎.我有一个包含国家和地区的数组.我想在密钥上按升序对两组信息进行排序. 这是我正在使用的数组: Array( [Country] = Array ( [United Kingdom] = Array ( [London] = Array ( [0] = 1 [1] = 5 [2] = 23 [3] = 71 ) [Manchester] = Array
我在这个上苦苦挣扎.我有一个包含国家和地区的数组.我想在密钥上按升序对两组信息进行排序.

这是我正在使用的数组:

Array
(
    [Country] => Array
        (
            [United Kingdom] => Array
                (
                    [London] => Array
                        (
                            [0] => 1
                            [1] => 5
                            [2] => 23
                            [3] => 71
                        )

                    [Manchester] => Array
                        (
                            [0] => 800
                        )

                )

            [United States] => Array
                (
                    [New York] => Array
                        (
                            [0] => 147
                            [1] => 111
                        )

                    [Washington] => Array
                        (
                            [0] => 213
                        )

                    [Florida] => Array
                        (
                            [0] => 6
                        )

                    [Texas] => Array
                        (
                            [0] => 9
                        )

                )

            [Brazil] => Array
                (
                    [Brasília] => Array
                        (
                            [0] => 64
                        )

                )

        )

)

所以重新排序的数组将是:

巴西
– 巴西利亚

英国
– 伦敦
– 曼彻斯特

美国
– 佛罗里达州
– 纽约
– 德克萨斯州
– 华盛顿

数据结构应保持不变,但数字的顺序(例如伦敦:1,5,23,71)可以保持不变.

我尝试了几种排序方法:
http://php.net/manual/en/array.sorting.php

但他们似乎没有做任何事情.也许是因为它是一个多维数组,或者它的逻辑结构不是100%…但我坚持使用数组.

解决方法

步骤1:
按键对国家排序.

ksort($arr['Country']);

第2步:遍历各个国家/地区并对这些键进行排序.

foreach ($arr['Country'] as $country=>$data) {
    ksort($arr['Country'][$country]);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读