php array_walk() 数组函数

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

/*函数array_walk():单一数组回调函数---对数组中的每个成员应用用户函数
* 1、语法:bool array_walk ( array &array, callback funcname [, mixed $userdata] )
* 2、描述:如果成功则返回 TRUE,失败则返回 FALSE
* 3、注意事项:
* 3.1、$funcname是用户自己 定义的回调函数,接受2个参数,第一个参数为数组$array的值,第二个参数为
* 数组$array的键名,如果提供第三个参数$userdata,将作为第三个参数传递给回调函数$funcname
* 3.2、使用回调函数可以直接更改数组各个单元的值,但更改各个键名是无效的
* 3.3、该函数 不会受到 array 内部数组指针的影响。array_walk() 会遍历整个数组而不管指针
* 的位置
* 3.4、用户不应在回调函数中改变该数组本身,例如增加/删除单元,unset 单元等等,如果 array_walk()
* 作用的数组改变了,则此函数的的行为未经定义,且不可预期。
*/
$words=array("l"=>"lemon","o"=>"orange","b"=>"banana","a"=>"apple");
//定义一个回调函数,输出数组元素
function words_print($value,$key,$prefix){
echo "$prefix:$key=>$value<br>\n";
}
//定义一个回调函数直接改变元素的值
function words_alter(&$value,$key){
$value=ucfirst($value);
$key=strtoupper(key);
}
//输出元素的值
array_walk($words,'words_print','words');
//改变元素的值
array_walk($words,'words_alter');
echo "<pre>";
print_r($words);
echo "</pre>";

运行效果如下:

相关文章

PHP取二进制文件头快速判断文件类型的实现代码

一般我们都是按照文件扩展名来判断文件类型,但是这个很不靠谱,轻易就通过修改扩展名来躲避了,一般必须要读取文件信息来识别,PHP扩展中提供了类似 exif_imagetype 这样的函数读...

C#静态方法与非静态方法实例分析

本文实例分析了C#静态方法与非静态方法,并对其用法进行了较为全面的分析。分享给大家供大家参考。具体分析如下: 通常来说,C#的类中可以包含两种方法:静态方法和非静态方法。 使用了stat...

关于zend studio 出现乱码问题的总结

出现乱码的地方大概有4个地方:1、文件的编码方式(就是你新建文件的编码),这一点需要设置编辑器的编码方式。2、页面没有指定浏览器编码的显示方式,这一点解决的办法是:1,如果页面是.htm...

仿AS3实现PHP 事件机制实现代码

复制代码 代码如下: <?php /** * 事件异常 * * @author lonely * @create 2010-10-21 * @version 0.1 * @last...

培养自己的php编码规范

培养自己的php编码规范

为什么我们要培养自己的编码规范? 我们写代码的时候,一个好的编码规范,对我们来说能够起到很多意向不到的效果。至少会有一下的好处: 1、提高我们的编码效率。整齐划一的代码方便我们进行复制...