博客列表 >php商品数组按价格升降序

php商品数组按价格升降序

Dz
Dz原创
2020年09月14日 21:31:231615浏览

数组排序函数

数组排序常用的函数:

函数名称 描述
asort() 对数组进行排序并保持索引关系
arsort() 对数组进行逆向排序并保持索引关系

实例:根据商品价格进行排序

定义数组:

  1. $data = [
  2. ['id'=>1,'title'=>'苹果','price'=>20],
  3. ['id'=>2,'title'=>'香蕉','price'=>15],
  4. ['id'=>3,'title'=>'梨子','price'=>18],
  5. ['id'=>4,'title'=>'西瓜','price'=>5]
  6. ];

自定义函数:

  1. function paixu($array = [],$key = "",$asc = true){
  2. // 初始化数组
  3. $result = [];
  4. // 遍历出准备排序的数组并取出需要排序的值存为新的数组
  5. foreach ($array as $k => $v){
  6. $values[$k] = $v[$key] ?? "";
  7. }
  8. // 对需要排序的键值进行升序或降序
  9. $asc ? asort($values) : arsort($values);
  10. // 销毁变量
  11. unset($k,$v);
  12. // 重新排列原有数组
  13. foreach ($values as $k => $v){
  14. $result[$k] = $array[$k];
  15. }
  16. // 返回新排序的数组
  17. return $result;
  18. }

调用函数:

  1. // 根据价格(price)进行升序排序
  2. $news_data = paixu($data,'price',true);
  3. print_r($news_data);

执行结果:

总结

数组的排序在开发中应用的比较多,很多场景可直接套用该实例函数

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议