تابع array_walk() در PHP

مثال

تابع تعریف شده توسط کاربر به هر عنصر آرایه اعمال می‌شود:

<?php
function myfunction($value,$key)
{
echo "کلید $key دارای مقدار $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Run Example

تعریف و استفاده

تابع 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 The function requires more parameters than those provided, then each array_walk() call myfunction will always produce 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:The key name and 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 Example

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 Example