加入收藏 | 设为首页 | 会员中心 | 我要投稿 黔东南站长网 (https://www.0855zz.com.cn/)- 混合云存储、建站、网络、云计算、应用安全!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php中数据排序与遍历函数总结

发布时间:2022-07-24 11:45:42 所属栏目:PHP教程 来源:互联网
导读:在php中,排序方式有三种,通过索引排序、通过值排序(不保留原索引)、通过值排序(保留原索引),每种又分为升序、降序以及用户定义顺序三个函数,它们分别如下: 通过索引排序:①升序 ksort() ②降序 krsort() ③用户定义顺序 uksort() 不保留原索引值排序:①升
  在php中,排序方式有三种,通过索引排序、通过值排序(不保留原索引)、通过值排序(保留原索引),每种又分为升序、降序以及用户定义顺序三个函数,它们分别如下:
 
  通过索引排序:①升序 ksort() ②降序 krsort() ③用户定义顺序 uksort()
 
  不保留原索引值排序:①升序 sort() ②降序 rsort() ③用户定义顺序 usort()
 
  保留原索引值排序:①升序 asort() ②降序 arsort() ③用户定义顺序 uasort()
 
  在php中,也可以用array_multisort来一次排序多个数组,不过项目中可能用得比较少,翻转数组,把数字索引翻转,索引重新从0开始:array_reverse()
 
  把索引和值调换:array_flip()
 
  随机顺序:shuffle()
 
  迭代器遍历,代码如下:
 
  $test01 = array('a', 'b', 'c');
  // for
  for ($i = 0; $i < count($test01); $i++) {
      echo $test01[$i];
  }
  // foreach value only
  foreach ($test01 as $value) {
      echo $value;
  }
  // foreach key and value
  $test01 = array('a' => 'aaaa', 'b' => 'bbbb', 'c' => 'cccc');
  foreach ($test01 as $key => $value) {
      echo "$key => $value";
  }
  $test01 = array('a' => 'aaaa', 'b' => 'bbbb', 'c' => 'cccc');
  while (list($key, $value) = each($test01)) {
      echo "$key => $value" . "<br/>";
  }
  php中,迭代遍历主要要用到以下函数。
 
  current() 迭代的当前元素。
 
  reset() 重新移动到第一个元素并返回它。
 
  next() 移动到下一个元素并返回它。
 
  prev() 移动到上一个元素并返回它。
 
  end() 移动到最后一个元素并返回它。
 
  each() 以数组的形式返回当前元素的索引和值,并移动到下一个迭代。
 
  key() 返回当前的索引。
 
  array_ walk() 为每一个元素调用函数。
 
  array_ reduce() 为每一个元素依次计算。
 
  变通遍历,代码如下:
 
  array_walk($test01, walk_test);
  function walk_test($key, $value) {
      echo "walk: $key => $value" . "<br/>";
  }
   
  $test02 = array(1, 2, 3, 4, 5);
  echo array_reduce($test02, reduce_test);
  function reduce_test($run_result, $current_value) {
      return $run_result + $current_value * $current_value;
  } 

(编辑:黔东南站长网)

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

    热点阅读