Heim >Backend-Entwicklung >PHP-Tutorial >具有通用性二维数组排序算法函数

具有通用性二维数组排序算法函数

WBOY
WBOYOriginal
2016-07-25 09:01:56961Durchsuche
填写您的邮件地址,订阅我们的精彩内容:转载地址: http://blog.qita.in/?post=468
  1. //二维数组排序, $arr是数据,$keys是排序的健值,$order是排序规则,1是升序,0是降序
  2. function array_sort($arr, $keys, $order=0) {
  3. if (!is_array($arr)) {
  4. return false;
  5. }
  6. $keysvalue = array();
  7. foreach($arr as $key => $val) {
  8. $keysvalue[$key] = $val[$keys];
  9. }
  10. if($order == 0){
  11. asort($keysvalue);
  12. }else {
  13. arsort($keysvalue);
  14. }
  15. reset($keysvalue);
  16. foreach($keysvalue as $key => $vals) {
  17. $keysort[$key] = $key;
  18. }
  19. $new_array = array();
  20. foreach($keysort as $key => $val) {
  21. $new_array[$key] = $arr[$val];
  22. }
  23. return $new_array;
  24. }
  25. //eg
  26. $arr = array('0'=>array('a'=>2,'b'=>4,'c'=>3),
  27. '1'=>array('a'=>45,'b'=>3,'c'=>3),
  28. '2'=>array('a'=>2,'b'=>7,'c'=>3),
  29. );
  30. $new_array = array_sort($arr,'a',0);
  31. print_r($new_array);
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:http请求处理类 Nächster Artikel:输入数据统一入口类