PHP中如何使用数组函数,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
array_multisort()对多个数组或多维数组进行排序可以用来一次对多个数组进行排序或者根据某一维对多维数组进行排序。排序时保留原有的键名关联,实现的功能和SQL中的ORDERBY差不多。
$ar1=array("10",100,100,"a"); $ar2=array(1,3,"2",1); array_multisort($ar1,$ar2); ?> //返回结果(保持了原来数组的关联性) $ar1=Array([0]=>10[1]=>a[2]=>100[3]=>100) $ar2=Array([0]=>1[1]=>1[2]=>2[3]=>3) //实现学生成绩排名 $grade=array("score"=>array(70,95,70.0,60,"70"), "name"=>array("ZhangSan","LiSi","WangWu", "ZhaoLiu","LiuQi")); array_multisort($grade["score"],SORT_NUMERIC,SORT_DESC, //将分数作为数值,由高到低排序 $grade["name"],SORT_STRING,SORT_ASC); //将名字作为字符串,由小到大排序 ?> //输出结果 array( 'score'=> array( 0=>95, 1=>'70', 2=>70, 3=>70, 4=>60, ), 'name'=> array( 0=>'LiSi', 1=>'LiuQi', 2=>'WangWu', 3=>'ZhangSan', 4=>'ZhaoLiu', ), )
array_rand()和shuffle(),一个是从数组中随机的取出一个或多个值,另一个是将数组中的值的顺序打乱,然后再可以从中取出值,它们都实现从数组中随机取出数据的功能,可以用于实现诸如抽奖之类的功能。
array_reduce()将回调函数function迭代地作用到input数组中的每一个单元中,从而将数组简化为单一的值。如果指定了可选参数initial,该参数将被当成是数组中的***个值来处理,或者如果数组为空的话就作为最终返回值。
<?php functionrsum($v,$w){ $v+=$w; return$v; } functionrmul($v,$w){ $v*=$w; return$v; } $a=array(1,2,3,4,5); $x=array(); //实现array_sum()功能 $b=array_reduce($a,"rsum");//115=1+2+3+4+5 $c=array_reduce($a,"rmul",10);//11200=1*2*3*4*5*10 $d=array_reduce($x,"rsum",1);//1 ?>
看完上述内容,你们掌握PHP中如何使用数组函数的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!