PHP数组函数总结分享,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
这几天在网上看了很多有关PHP数组函数的相关知识,觉得孔老夫子的“温故而知新”果然不假,这里是我总结的一些经验,希望对大家有帮助。
APC方法实现PHP上传多个文件原理剖析
新手必看PHP上传文件进度全面揭秘
大师笔记之PHP上传文件代码
百宝箱之PHP数组基本概念详细介绍
挖掘PHP数组函数库array数组创建和使用
PHP中的数组实际上是一个有序图,图是一种把values映射到keys的类型。此类型在很多方面做了优化,因此你可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。因为可以用另一个PHP数组作为值,也可以很容易地模拟树。解释这些结构超出了本手册的范围,但对于每种结构你至少会发现一个例子。要得到这些结构的更多信息,我们建议你参考有关此广阔主题的外部著作,以下特记下我的一些PHP数组函数体会:
将一个1维数组分割成2维数组array_chunk()
$input_array=array('a','b','c','d','e'); print_r(array_chunk($input_array,2));
比较2个数组,array_diff_assoc()或者array_diff(),如果返回值为空,表示两个数组相同,否则就不同。
用一个函数来过滤数组中的数值array_filter()
functionodd($var){ return($var%2==1); } functioneven($var){ return($var%2==0); } $arrayarray1=array("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5); $arrayarray2=array(6,7,8,9,10,11,12); echo"Odd:\n"; print_r(array_filter($array1,"odd")); echo"Even:\n"; print_r(array_filter($array2,"even")); ?>
array_map()将回调函数作用到给定数组的单元上,它的参数可以是一个数组,也可以是多个数组,回调函数的参数必须要和调用它的参数相同。
//单个参数的例子,将数组中的每个值,乘以它的3次方 functioncube($n){ return$n*$n*$n; } $a=array(1,2,3,4,5); $b=array_map("cube",$a); print_r($b); ?> //多个数组参数的例子 functionshow_Spanish($n,$m){ return"Thenumber$niscalled$minSpanish"; } functionmap_Spanish($n,$m){ returnarray($n=>$m); } $a=array(1,2,3,4,5); $b=array("uno","dos","tres","cuatro","cinco"); $c=array_map("show_Spanish",$a,$b); print_r($c); $d=array_map("map_Spanish",$a,$b); print_r($d); ?> //输出结果 //printoutof$c Array ( [0]=>Thenumber1iscalledunoinSpanish [1]=>Thenumber2iscalleddosinSpanish [2]=>Thenumber3iscalledtresinSpanish [3]=>Thenumber4iscalledcuatroinSpanish [4]=>Thenumber5iscalledcincoinSpanish )
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网行业资讯频道,感谢您对编程网的支持。