欢迎各位兄弟 发布技术文章
这里的技术是共享的
将函数作用到数组中的每个值上,每个值都乘以本身,并返回带有新的值的数组:
<?phpfunction myfunction($v){return($v*$v);}$a=array(1,2,3,4,5);print_r(array_map("myfunction",$a));?> |
array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新的值的数组。
提示:您可以向函数输入一个或者多个数组。
| 参数 | 描述 |
|---|---|
| myfunction | 必需。用户自定义函数的名称,或者是 null。 |
| array1 | 必需。规定数组。 |
| array2 | 可选。规定数组。 |
| array3 | 可选。规定数组。 |
| 返回值: | 返回包含用户自定义函数作用后的 array1 的值的数组。 |
|---|---|
| PHP 版本: | 4.0.6+ |
使用一个用户自定义函数来改变数组的值:
<?phpfunction myfunction($v){if ($v==="Dog"){return "Fido";}return $v;}$a=array("Horse","Dog","Cat");print_r(array_map("myfunction",$a));?> |
使用两个数组:
<?phpfunction myfunction($v1,$v2){if ($v1===$v2){return "same";}return "different";}$a1=array("Horse","Dog","Cat");$a2=array("Cow","Dog","Rat");print_r(array_map("myfunction",$a1,$a2));?> |
将数组中值的所有字母改为大写:
<?phpfunction myfunction($v) {$v=strtoupper($v);return $v;}$a=array("Animal" => "horse", "Type" => "mammal");print_r(array_map("myfunction",$a));?> |
将函数名赋值为 null 时:
<?php$a1=array("Dog","Cat");$a2=array("Puppy","Kitten");print_r(array_map(null,$a1,$a2));?> |
完整的 PHP Array 参考手册来自 http://run.jb51.net/php/php-ref-array-array-map.html