首页 > 解决方案 > 在 PHP 中使用字符串对关联数组进行排序

问题描述

我正在处理一个关联数组的 php 问题并尝试对其进行排序。我所拥有的看起来像这样:


[2021-07-16T10:45:23-04:00] => Array
    (
        [0] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples
        [1] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Apples
        [2] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [3] => 0.0.0.111|83b5ed42d2593aa37ad8c428e4f76288|Oranges
    )

[2021-07-16T10:45:24-04:00] => Array
    (
        [0] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples
        [1] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples
        [2] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [3] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [4] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Oranges
        [5] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Apples
        [6] => 0.0.0.111|83b5ed42d2593aa37ad8c428e4f76288|Apples
    )

我想对其进行排序,使其看起来像这样:

[2021-07-16T10:45:23-04:00] => Array
    (
        [0] => 0.0.0.111|83b5ed42d2593aa37ad8c428e4f76288|Oranges
        [1] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Apples
        [2] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [3] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples
    )

[2021-07-16T10:45:24-04:00] => Array
    (
        [0] => 0.0.0.111|83b5ed42d2593aa37ad8c428e4f76288|Apples
        [1] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [2] => 0.0.1.177|278670a3934717e4c005e02b9a4c1bab|Apples
        [3] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Oranges
        [4] => 0.0.0.133|631dad007000b9ed59d41653176ac04b|Apples
        [5] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples
        [6] => 0.0.1.222|ed7e434b79e54834440101fc07cc0981Apples
    )

我曾想过沿着 | 爆炸 然后取 0.0.0.111 并将其与其他所有内容进行比较。我尝试过的看起来像这样:

  foreach ($test_array as $info) {
    asort($info);
  }

我意识到我比较了整个:0.0.1.222|ed7e434b79e54834440101fc07cc0981|Apples

而不是第一部分 0.0.1.222。感谢您的任何帮助。

标签: phparrayssortingassociative-array

解决方案


尝试array_map('sort', $yourMainArray);或在地图上运行您自己的回调,甚至一个简单的循环和排序都可以做到。


推荐阅读