当前位置:  首页>> 技术小册>> PHP合辑3-数组函数

array_walk()函数是PHP的一个内置函数。array_walk()函数会遍历整个数组,而不考虑指针位置,并将回调函数或用户定义函数应用于数组的每个元素。数组元素的键和值都是回调函数中的参数。

语法:

boolean array_walk(array,myFunction,extraParam)
参数:该函数接受三个参数,如下所述:

array:这是必需的参数,指定输入数组。myFunction:此参数指定用户定义函数的名称,也是必需的。用户定义函数通常接受两个参数,其中第一个参数表示数组的值,第二个参数表示相应的键。extraparam:这是可选参数。它指定除两个参数(数组键和值)之外的用户定义函数的额外参数。

返回值:该函数返回一个布尔值。成功时返回TRUE,失败时返回FALSE。


下面的程序说明了array_walk()函数:

  1. <?php
  2. // PHP program to illustrate array_walk()
  3. // function
  4. // user-defined callback function
  5. function myfunction($value, $key)
  6. {
  7. echo "The key $key has the value $value \n";
  8. }
  9. // Input array
  10. $arr = array("a"=>"yellow", "b"=>"pink", "c"=>"purple");
  11. // calling array_walk() with no extra parameter
  12. array_walk($arr, "myfunction");
  13. ?>

output:

  1. The key a has the value yellow
  2. The key b has the value pink
  3. The key c has the value purple

示例2:

  1. <?php
  2. // PHP program to illustrate array_walk()
  3. // function
  4. // user-defined callback function
  5. function myfunction($value, $key, $extraParam)
  6. {
  7. echo "The key $key $extraParam $value \n";
  8. }
  9. // Input array
  10. $arr = array("a"=>"yellow", "b"=>"pink", "c"=>"purple");
  11. // calling array_walk() with extra parameter
  12. array_walk($arr, "myfunction", "has the value");
  13. ?>

output:

  1. The key a has the value yellow
  2. The key b has the value pink
  3. The key c has the value purple

示例3:

  1. <?php
  2. // PHP program to illustrate array_walk()
  3. // function
  4. // user-defined callback function to
  5. // update array values - to update array
  6. // values, pass the first parameter by reference
  7. function myfunction(&$value, $key)
  8. {
  9. $value = $value + 10;
  10. }
  11. // Input array
  12. $arr = array("first"=>10, "second"=>20, "third"=>30);
  13. // calling array_walk() with no extra parameter
  14. array_walk($arr, "myfunction");
  15. // printing array after updating values
  16. print_r($arr);
  17. ?>

output:

  1. Array
  2. (
  3. [first] => 20
  4. [second] => 30
  5. [third] => 40
  6. )

该分类下的相关小册推荐: