array_walk() 函数

array_walk() 函数对数组中的每个元素应用回调函数。如果成功则返回 TRUE,否则返回 FALSE。

典型情况下 function 接受两个参数。array 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata ,将被作为第三个参数传递给回调函数。

如果 function 函数需要的参数比给出的多,则每次 array_walk() 调用 function 时都会产生一个 E_WARNING 级的错误。这些警告可以通过在 array_walk() 调用前加上 PHP 的错误操作符 @ 来抑制,或者用 error_reporting()

array_walk(array,function,userdata...)
参数 描述
array 必需。规定数组。
function 必需。用户自定义函数的名称。

userdata

可选。用户输入的值,可作为回调函数的参

提示:您可以为函数设置一个或多个参数。

注释:如果回调函数需要直接作用于数组中的值,可以将回调函数的第一个参数指定为引用:&$value。(参见例子 3)

注释:将键名和 userdata 传递到 function 中是 PHP 4.0 新增加的。

例子 1

<?php
function myfunction($value,$key)
{
echo "The key $key has the value $value<br />";
}
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse");
array_walk($a,"myfunction");
?>

输出:

The key a has the value Cat
The key b has the value Dog
The key c has the value Horse

例子 2

带有一个参数:

<?php
function myfunction($value,$key,$p)
{
echo "$key $p $value<br />";
}
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse");
array_walk($a,"myfunction","has the value");
?>

输出:

a has the value Cat
b has the value Dog
c has the value Horse

例子 3

改变数组元素的值(请注意 &$value):

<?php
function myfunction(&$value,$key)
{
$value="Bird;
}
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse");
array_walk($a,"myfunction");
print_r($a);
?>

输出:

Array ( [a] => Bird [b] => Bird [c] => Bird )

array_walk() 函数

时间: 2024-08-13 17:01:52

array_walk() 函数的相关文章

PHP学习笔记之array_walk()函数

有时候,读者可能希望以相同方式使用或者修改数组中的每一个元素.array_walk()函数允许进行这样的操作.函数array_walk()的原型如下所示: bool array_walk(array arr,string func,[mixed userdata]) 其调用方法类似于前面所介绍的usort()函数的调用,array_walk()函数要求声明一个你自己的函数.正如你所看到的,array_walk()函数需要三个参数.第一个是arr,也就是需要处理的数组.第二个是func,也就是用户

PHP array_walk() 函数

定义和用法 array_walk() 函数对数组中的每个元素应用用户自定义函数.在函数中,数组的键名和键值是参数. <?php function myfunction($value,$key,$p) { echo "$key $p $value<br>"; } $a=array("a"=>"red","b"=>"green","c"=>"bl

PHP array_walk() 函数详解

定义 array_walk - 对数组的每个元素应用自定义函数 描述 array_walk ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool 回调函数的参数,第一个是元素值,第二个是元素键名,第三个是可选的 $userdata. 如果只想改变数组值,第一个参数可使用引用传递,即在参数前加上 &. 示例 <?php $fruits = array("a" => &

【夯实PHP系列】购物车代码说明PHP的匿名函数

1. 定义:匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数.最经常用作回调函数(callback)参数的值.当然,也有其它应用的情况. 2. 用法: 1)作为变量的值: 闭包函数也可以作为变量的值来使用.PHP 会自动把此种表达式转换成内置类 Closure 的对象实例.把一个 closure 对象赋值给一个变量的方式与普通变量赋值的语法是一样的,最后也要加上分号 2)从父作用域继承变量: 闭包可以从父作用域中继承变量.

回调、匿名函数和闭包

(1) is_callable用来检测传进来的值能被call_user_func或者array_walk等函数使用,它非常智能,能够测试数组,数组形式的有效回调应该是以对象作为第一个元素,以方法名作为第二个元素,类似 array('new SomeClass()', 'someFunc'). 下面用例子来说明: 1 function a(){ 2 3 } 4 5 $a = 'a'; 6 7 if(is_callable($a)){ 8 9 echo 'a is callable <br>';

PHP 各种函数

usleep() 函数延迟代码执行若干微秒. unpack() 函数从二进制字符串对数据进行解包. uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID. time_sleep_until() 函数延迟代码执行直到指定的时间. time_nanosleep() 函数延迟代码执行若干秒和纳秒. sleep() 函数延迟代码执行若干秒. show_source() 函数对文件进行语法高亮显示. strip_whitespace() 函数返回已删除 PHP 注释以及空白字符的源代码文件.

php函数整理

php usleep() 函数延迟代码执行若干微秒. unpack() 函数从二进制字符串对数据进行解包. uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID. time_sleep_until() 函数延迟代码执行直到指定的时间. time_nanosleep() 函数延迟代码执行若干秒和纳秒. sleep() 函数延迟代码执行若干秒. show_source() 函数对文件进行语法高亮显示. strip_whitespace() 函数返回已删除 PHP 注释以及空白字符的源代

PHP常用函数大全

php函数 usleep() 函数延迟代码执行若干微秒.unpack() 函数从二进制字符串对数据进行解包.uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.time_sleep_until() 函数延迟代码执行直到指定的时间.time_nanosleep() 函数延迟代码执行若干秒和纳秒.sleep() 函数延迟代码执行若干秒.show_source() 函数对文件进行语法高亮显示.strip_whitespace() 函数返回已删除 PHP 注释以及空白字符的源代码文件.p

PHP常用函数备用

刚学习php的时候,我也为记忆php函数苦恼不已.认为干嘛记忆这么枯燥无味的东西呢?用的时候查一下手册不就行了吗?但是当时因为身在辅导机构,还是记忆了一大堆自己并不感兴趣的函数. 由此就想起来,小的时候背诵的那些古诗词.小的时候并不能理解这古诗词里面的意思.可是随着慢慢的长大,到了一处陌生的城市,每逢节日不能回家和父母团聚的时候,我们就会不由自主的嘀咕起来:独在异乡为异客,每逢佳节倍思亲.当我们与朋友聚会的时候,我们会感叹:今朝有酒今朝醉,莫使金樽空对月.当我们于朋友离别的时候,我们会说:海内存