【问题标题】:How can I sort the results of a for each loop?如何对每个循环的结果进行排序?
【发布时间】:2016-09-08 02:01:45
【问题描述】:

我有一个字符串列表var_dump($key)

string(6) "samuel"
string(4) "john"
string(4) "alan"
string(5) "frank"
string(3) "bob"

它们是多维数组循环的结果:

foreach ($array as $key => $item) { 
   if(is_array($item)){
      if (stripos($key, $keySearch) !== false){
      var_dump($key);
      }
   }
}

是否可以对这个字符串列表进行排序?

我试过了:

   foreach ($array as $key => $item) {  
       if(is_array($item)){
          if (stripos($key, $keySearch) !== false){
          asort($key);
          var_dump($key);
          }
       }
    }

还有

foreach ($array as $key => $item) {  
       if(is_array($item)){
          if (stripos($key, $keySearch) !== false){
              array_multisort($key);
              var_dump($key);
          }
       }
    }

我的排序尝试不起作用。问题是我无法对array 进行排序,因为它是一个复杂的多维数组。所以我不知何故只想对结果进行排序。但我不知道该怎么做。

我希望var_dump($key) 的结果是:

string(4) "alan"
string(3) "bob"
string(5) "frank"
string(4) "john"
string(6) "samuel"

【问题讨论】:

  • 展示你的多重排序尝试
  • 你能在没有var_dump的情况下显示你的实际数组吗?
  • @Thamilan 你的意思是echo $key
  • @Thamilan 然后是samuel john alan frank bob
  • 好吧,这是最好的决定

标签: php arrays sorting multidimensional-array


【解决方案1】:

PHP - 数组的排序函数

sort() - sort arrays in ascending order
rsort() - sort arrays in descending order
asort() - sort associative arrays in ascending order, according to the value
ksort() - sort associative arrays in ascending order, according to the key
arsort() - sort associative arrays in descending order, according to the value
krsort() - sort associative arrays in descending order, according to the key

【讨论】:

  • 我测试了所有变体,但总是得到相同的结果。无法解决问题
猜你喜欢
  • 1970-01-01
  • 2018-10-10
  • 1970-01-01
  • 2014-01-17
  • 1970-01-01
  • 2021-05-05
  • 1970-01-01
  • 2014-01-08
  • 2021-06-29
相关资源
最近更新 更多