|
|
51CTO旗下网站
|
|
移动端

深入学习PHP数组函数使用方法

数组是我们在编程中必不可少的,文章这里详细的介绍了PHP数组函数的使用和方法,希望对大家有帮助。

作者:佚名来源:博客|2009-11-16 15:40

PHP数组函数还是比较常用的,于是我研究了一下PHP数组函数,在这里拿出来和大家分享一下,希望对大家有用。今天我们学习PHP数组函数,数组是一种数据类型,它的使用频率相当高,学会处理数组会让你做网站时得心应手。

举个例子:你的网站数据库里存有大里的文章,现在你想在一个页面上显示20条娱乐新闻的标题,这20条标题从数据库里取出来后你想用20个变量表示吗?我想你不会这么笨吧,那么用什么变量能完全接收这20条数据呢?这就要用到数组变量。什么是数组呢?数组实际上是一个数据集合,相当于是一个数据容器,很多数据存放在里面,我们可以按一定方法存进去或取出来,还可以对它里面的数据进行排序等各种操作,还可以检查里面有没有我们想要的数据等等。

1.array_multisort()对多个数组或多维数组进行排序可以用来一次对多个数组进行排序或者根据某一维对多维数组进行排序。排序时保留原有的键名关联,实现的功能和SQL中的ORDERBY差不多。

  1. $ar1=array("10",100,100,"a");  
  2. $ar2=array(1,3,"2",1);  
  3. array_multisort($ar1,$ar2);  
  4. ?> 
  5. //返回结果(保持了原来数组的关联性)  
  6. $ar1=Array([0]=>10[1]=>a[2]=>100[3]=>100)  
  7. $ar2=Array([0]=>1[1]=>1[2]=>2[3]=>3)  
  8.  
  9. //实现学生成绩排名  
  10. $grade=array("score"=>array(70,95,70.0,60,"70"),  
  11. "name"=>array("ZhangSan","LiSi","WangWu",  
  12. "ZhaoLiu","LiuQi"));  
  13. array_multisort($grade["score"],SORT_NUMERIC,SORT_DESC,  
  14. //将分数作为数值,由高到低排序  
  15. $grade["name"],SORT_STRING,SORT_ASC);  
  16. //将名字作为字符串,由小到大排序  
  17. ?> 
  18. //输出结果  
  19.  
  20. array(  
  21. 'score'=> 
  22. array(  
  23. 0=>95,  
  24. 1=>'70',  
  25. 2=>70,  
  26. 3=>70,  
  27. 4=>60,  
  28. ),  
  29. 'name'=> 
  30. array(  
  31. 0=>'LiSi',  
  32. 1=>'LiuQi',  
  33. 2=>'WangWu',  
  34. 3=>'ZhangSan',  
  35. 4=>'ZhaoLiu',  
  36. ),  
  37. )  

2.array_rand()和shuffle(),一个是从数组中随机的取出一个或多个值,另一个是将数组中的值的顺序打乱,然后再可以从中取出值,它们都实现从数组中随机取出数据的功能,可以用于实现诸如抽奖之类的功能。

3.array_reduce()将回调函数function迭代地作用到input数组中的每一个单元中,从而将数组简化为单一的值。如果指定了可选参数initial,该参数将被当成是数组中的第一个值来处理,或者如果数组为空的话就作为最终返回值。

  1. <?php 
  2. functionrsum($v,$w){  
  3. $v+=$w;  
  4. return$v;  
  5. }  
  6.  
  7. functionrmul($v,$w){  
  8. $v*=$w;  
  9. return$v;  
  10. }  
  11.  
  12. $a=array(1,2,3,4,5);  
  13. $x=array();  
  14. //实现array_sum()功能  
  15. $b=array_reduce($a,"rsum");//115=1+2+3+4+5  
  16.  
  17. $c=array_reduce($a,"rmul",10);//11200=1*2*3*4*5*10  
  18. $d=array_reduce($x,"rsum",1);//1  
  19. ?> 

这个函数可以实现求一个数组的和(积,差等功能)

【责任编辑:姜程程 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

JSP应用开发详解(第二版)

本书结合JSP和Servlet的最新规范,从基本的语法和规范入手,以经验为后盾,以实用为目标,以实例为导向,以实践为指导,深入浅出地讲解了JS...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊