- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章php array_walk 对数组中的每个元素应用用户自定义函数详解由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
php array_walk 对数组中的每个元素应用用户自定义函数 。
array_walk 使用用户自定义函数对数组中的每个元素做回调处理 。
基本语法 。
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] ) 。
将用户自定义函数 funcname 应用到 array 数组中的每个单元.
array_walk() 不会受到 array 内部数组指针的影响。 array_walk() 会遍历整个数组而不管指针的位置.
参数介绍:
。
参数 | 描述 |
---|---|
array | 必需。输入的数组。 |
funname | 必需。用户自定义函数的名称。典型情况下 funcname 接受两个参数。array 参数的值作为第一个,键名作为第二个。如果 funcname 需要直接作用于数组中的值,则给 funcname 的第一个参数指定为引用。这样任何对这些单元的改变也将会改变原始数组本身。 |
userdata | 可选。规定用户自定义函数的参数。如果提供了可选参数 userdata,将被作为第三个参数传递给 callback funcname。 |
。
说明:
1.array_walk() 函数对数组中的每个元素应用回调函数。如果成功则返回 TRUE,否则返回 FALSE.
2.典型情况下 funname接受两个参数。array 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata ,将被作为第三个参数传递给回调函数.
3.如果 funname函数需要的参数比给出的多,则每次 array_walk() 调用 funname时都会产生一个 E_WARNING 级的错误。这些警告可以通过在 array_walk() 调用前加上 PHP 的错误操作符 @ 来抑制,或者用 error_reporting().
4.如果回调函数需要直接作用于数组中的值,可以将回调函数的第一个参数指定为引用.
返回值 。
成功时返回 TRUE , 或者在失败时返回 FALSE .
实例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<?php
$fruits
=
array
(
"d"
=>
"lemon"
,
"a"
=>
"orange"
,
"b"
=>
"banana"
,
"c"
=>
"apple"
);
function
test_alter(&
$item1
,
$key
,
$prefix
) {
$item1
=
" $prefix : $item1 "
;
}
function
test_print(
$item2
,
$key
) {
echo
" $key . $item2 <br />"
;
}
echo
"Before ...:<br />"
;
array_walk
(
$fruits
,
'test_print'
);
array_walk
(
$fruits
,
'test_alter'
,
'fruit'
);
echo
"... and after:<br />"
;
array_walk
(
$fruits
,
'test_print'
);
?>
|
运行结果:
Before ...: d . lemon a . orange b . banana c . apple ... and after: d . fruit : lemon a . fruit : orange b . fruit : banana c . fruit : apple 。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! 。
最后此篇关于php array_walk 对数组中的每个元素应用用户自定义函数详解的文章就讲到这里了,如果你想了解更多关于php array_walk 对数组中的每个元素应用用户自定义函数详解的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我有这个简单的代码: $postCopy = $_POST['adminpanel']; array_walk($postCopy, function($v, $k) { return '';
我不明白 array_walk($arr, 'intval'); 做了什么,我在下面的代码片段中注释掉了: 无论我是否使用它似乎都不会改变输出。 最佳答案 它的目的是应该将 $arr 的每一项都转换
我只是想知道是否有人知道为什么我不能使用 require_once 作为 array_walk 的回调。我可以将它包含在一个匿名函数中并运行它,但它给出了一个无效的回调错误: $includes =
我得到了三个带有某种分层预定义术语的数组 array("fruits", "yellow", "pineapple"); array("fruits", "yellow", "lemon"); arr
我有一个看起来像这样的列表: list = [1,2,3,4] 我想给每个值加 12。在 PHP 中,您可以使用 array_walk 来处理数组中的每个项目。是否有比执行 for 循环类似的功能或更
有没有办法从匿名函数内部停止 array_walk? 这里有一些示例代码(有效)来说明我的意思,它检查数组是否只有数值。 $valid = true; array_walk($parent, func
有没有一种方法可以让这个数组使用我的匿名函数来设置值? $url = array('dog', 'cat', 'fish'); array_walk($url, function(&$value, &
php array_walk 对数组中的每个元素应用用户自定义函数 array_walk 使用用户自定义函数对数组中的每个元素做回调处理 基本语法 bool array_walk ( arra
代码如下: /*函数array_walk():单一数组回调函数---对数组中的每个成员应用用户函数 * 1、语法:bool array_walk ( array &array
以下code does not work如预期。 $fruits = array('apple', 'orange', 'banana', 'cherry'); array_walk($fruits,
如何使用 array_walk 更改元素的值? 例如,这是我的数组, $items = array( 0 => array( "id" => "1", "tit
我在类中使用带有闭包的 array_walk 时遇到了一个奇怪的问题。在我使用 php 版本 5.4.7 的开发环境中不会出现问题,但在我的部署环境 5.3.3 中会出现问题。 以下代码在我的生产机器
我正在尝试使用 array_walk() 函数来处理数组: 'b1', 'n2' => 'b2', 'n3' => 'b3'); array_walk($array, function(&$val,
我想知道如何将更多参数传递给我的 array_walk.. $addresses = array('www.google.com', 'www.yahoo.com', 'www.microsoft.c
我正在尝试用特定条件替换 array 值。 假设数组 $mark 有以下值 $mark = array(90,85); 只是正常的检查值,它正在回显正确的值 array_walk_recursive(
我正在处理不是我编写的代码。我看到开发人员想要修剪数组的所有元素并使用了 array_walk() 但是声明一个 _trim 函数有什么意义,它所做的只是使用标准 修剪()? array_walk($
在这种情况下,我们将在 array_walk() 中返回 false。事实上,他们在官方文档中说: Returns TRUE on success or FALSE on failure. 甚至,如果
我目前正在使用 array_map 将回调应用于数组元素。但我希望能够像 array_walk 那样将参数传递给回调函数。我想我可以只使用 array_walk,但我需要返回值是一个数组,就像您使用
我正在使用数组函数将竖线分隔的字符串转换为关联数组。 $piper = "|k=f|p=t|e=r|t=m|"; $piper = explode("|",$piper); $piper = arra
php 开发经常遇到数组处理,会涉及到题目中这几个函数。这个函数功能类似,很多时候容易混淆。 array_walk: array_walk — 使用用户自定义函数对数组中的每个元素做回调
我是一名优秀的程序员,十分优秀!