关于数组排序,PHP内置了shuffle()函数,可以重排数组排序,但是此函数“将删除原有的键名而不仅是重新排序”,如果传入的是关联数组,则关联数组的键名将丢失。
解决方法如下:关联数组和索引数组都可以用
代码如下 |
复制代码 |
function array_shuffle($array)
{
//不是数组
if(!is_array($array)) {
return array();
}
//如果为空或者只有1项
if(($count=count($array))
return $array;
}
//得到打乱的键
$rand_keys = array_rand($array, count($array));
$newArr=array();
foreach($rand_keys as $v) {
$newArr[$v] = $array[$v];
}
return $newArr;
}
|
http://www.bkjia.com/PHPjc/631666.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631666.htmlTechArticle关于数组排序,PHP内置了shuffle()函数,可以重排数组排序,但是此函数“将删除原有的键名而不仅是重新排序”,如果传入的是关联数组,...