PHP array_walk() 函数

实例

对数组中的每个元素应用用户自定义函数:

<?php
function myfunction($value,$key)
{
echo "The key $key has the value $value
"; } $a=array("a"=>"red","b"=>"green","c"=>"blue"); array_walk($a,"myfunction"); ?>

Run Instance

定义和用法

array_walk() 函数对数组中的每个元素应用用户自定义函数。在函数中,数组的键名和键值是参数。

Note:您可以通过把用户自定义函数中的第一个参数指定为引用:&$value,来改变数组元素的值(参见实例 2)。

提示:如需操作更深的数组(一个数组中包含另一个数组),请使用 array_walk_recursive() ফাংশন。

সংজ্ঞা

array_walk(array,myfunction,userdata...)
পারামিটার বর্ণনা
array অপরিহার্য।একক নির্দিষ্ট করে।
myfunction অপরিহার্য।ব্যবহারকারীর কাস্টম ফাংশনের নাম।
userdata,... অপশনাল।ব্যবহারকারীর কাস্টম ফাংশনের পারামিটারকে নির্দিষ্ট করে।আপনি এই ফাংশনে অন্যান্য পারামিটারগুলিকে পাঠাতে পারেন。

ব্যাখ্যা

array_walk() ফাংশন একক এলিমেন্টকে কলব্যাক ফাংশনকে অ্যাপ্লাই করে।সফল হলে TRUE ফিরায়, অন্যথায় FALSE ফিরায়。

সাধারণ ক্ষেত্রে myfunction দুটি পারামিটার নিয়ে গ্রহণ করে。array পারামিটারের মান প্রথম, কী নাম দ্বিতীয়।যদি অপশনাল পারামিটার প্রদান করা হয় userdata এটি কলব্যাক ফাংশনকে তৃতীয় পারামিটার হিসাবে পাঠানো হবে。

if myfunction If the number of parameters required by the function is more than the number provided, then each array_walk() call myfunction will always generate an E_WARNING level error. These warnings can be suppressed by adding PHP's error operator @ before the array_walk() call or by using error_reporting().

Note:If the callback function needs to directly act on the values in the array, you can specify the first parameter of the callback function as a reference: &$value. (See example 3)

Note:to userdata passed to myfunction is a new feature added in PHP 4.0.

Technical Details

Return Value: Returns TRUE if successful, otherwise FALSE.
PHP Version: 4+

More Examples

Example 1

Set a parameter:

<?php
function myfunction($value,$key,$p)
{
echo "$key $p $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction","has the value");
?>

Run Instance

Example 2

Change the value of an array element (note &$value):

<?php
function myfunction(&$value,$key)
{
$value="yellow";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
print_r($a);
?>

Run Instance