PHP 多维数组进行排序(php连接mysql)

网友投稿 858 2022-07-29

/*

PHP 多维数组进行排序(php连接mysql)

function:二维数组按指定的键值排序

$array=array(

0=>array('id'=>8,'username'=>'phpernote'),

1=>array('id'=>9,'username'=>'com'),

2=>array('id'=>5,'username'=>'www')

);

现在需要将这个二维数组按id升序排列,则:

array_sort($array,'id','asc');

*/

public function array_sort($array,$keys,$type='asc'){

if(!isset($array) || !is_array($array) || empty($array)){

return '';

}

if(!isset($keys) || trim($keys)==''){

return '';

}

if(!isset($type) || $type=='' || !in_array(strtolower($type),array('asc','desc'))){

return '';

}

$keysvalue=array();

foreach($array as $key=>$val){

$val[$keys] = str_replace('-','',$val[$keys]);

$val[$keys] = str_replace(' ','',$val[$keys]);

$val[$keys] = str_replace(':','',$val[$keys]);

$keysvalue[] =$val[$keys];

}

asort($keysvalue); //key值排序

reset($keysvalue); //指针重新指向数组第一个

foreach($keysvalue as $key=>$vals) {

$keysort[] = $key;

}

$keysvalue = array();

$count=count($keysort);

if(strtolower($type) != 'asc'){

for($i=$count-1; $i>=0; $i--) {

$keysvalue[] = $array[$keysort[$i]];

}

}else{

for($i=0; $i<$count; $i++){

$keysvalue[] = $array[$keysort[$i]];

}

}

return $keysvalue;

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:想做一个网站需要花多少钱?(做个网站一般需要多少钱)
下一篇:PHP Excel导入多表(php面试题)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~