本文实例讲述了PHP常见数组函数用法。分享给大家供大家参考,具体如下:
1.array array_merge(array $array1 [, array $array2 [, $array]])
函数功能:将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
例1:数组中有相同的字符串键名
1
2
3
|
$array1 = array ( 'color' => 'greed' , '3' =>8); $array2 = array ( "a" , 'color' => "red" , '3' =>8); var_dump( array_merge ( $array1 , $array2 )); |
输出:
1
2
3
4
5
6
|
array (4){ [ "color" ]=> string(3) "red" [0]=> int(8) [1]=> string(1) "a" [2]=> int(8) } |
键名重复的color被覆盖,只取后面的值‘red',而数字键名相同的‘3'未被覆盖,而是附加到后面。
2.array array_slice(array $array,int $offset, [, int $length [, bool $preserve_keys ]])
函数功能:返回根据offset和length参数所指定的array数组中的一段序列。
如果offset非负:则数组将从开始端到offset的偏移量开始。$array=array(1,2,3,4,5,6);array_slice($array,2);相当于(1,2,3,4,5,6);红色代表截取后的数组
如果offset为负:则数组将从末端到offset的偏移量开始。array_slice($array,-2);相当于(1,2,3,4,5,6);
如果length为正:从offset开始的截取的个数。array_slice($array,2,2);相当于(1,2,3,4,5,6);
如果length为负:则序列将终止在距离数组末端这么远的地方;array_slice($array,2,-1);相当于(1,2,3,4,5,6);
默认为:到数组末尾。
关于array_slice的具体用法还可以参考本站前面一篇《PHP中array_slice函数用法实例详解》
3.array_map(callback $callback , array $arr1[, array $.....])
函数功能:返回一个数组,该数组包含了arr1中的所有单元经过callback作用后的单元。callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。
1
2
3
4
5
6
7
8
9
|
<?php function cube( $n ) { return ( $n * $n * $n ); } $a = array (1, 2, 3, 4, 5); $b = array_map ( "cube" , $a ); print_r( $b ); ?> |
输出:
1
2
3
4
5
6
7
8
|
Array ( [0] => 1 [1] => 8 [2] => 27 [3] => 64 [4] => 125 ) |
希望本文所述对大家php程序设计有所帮助。