PHP array_walk_recursive() فونکشن
مثال
مجموعه میں ہر عنصر پر کاربر تعریف شدہ فونکشن کا استعمال کریں:
<?php function myfunction($value,$key) { echo "کلید $key کی قیمت $value ہے。<br>"; } $a1=array("a"=>"red","b"=>"green"); $a2=array($a1,"1"=>"blue","2"=>"yellow"); array_walk_recursive($a2,"myfunction"); ؟>
تعریف و استفاده
فنکشن array_walk_recursive() به هر عنصر آرایه کاربرد بازگشتی کاربر را اعمال میکند. در فنکشن، نام کلید و مقدار آرایه به عنوان پارامترها هستند.
این فنکشن با array_walk() تفاوت فنکشنها در این است که میتوانند آرایههای عمیقتری را عمل کنند (یک آرایه شامل آرایه دیگر).
نحوه استفاده
array_walk_recursive(آرایه,myfunction,parameter...)
پارامتر | توضیح |
---|---|
آرایه | ضروری. آرایهای را تعیین میکند. |
myfunction | ضروری. نام فنکشن اختصاصی کاربر. |
userdata,... | اختیاری. پارامترهای اختصاصی کاربر را تعیین میکند. شما میتوانید هر تعداد پارامتر را به این فنکشن منتقل کنید. |
توضیح
با array_walk() فنکشنهای مشابه، فنکشن array_walk_recursive() به هر عنصر آرایه کاربرد بازگشتی را اعمال میکند. تفاوت اصلی این است که اگر عنصر آرایه نیز آرایه باشد، کاربردهای بازگشتی به صورت مرتبهای به لایههای عمیقتر آرایهها فراخوانی میشوند، یعنی به لایههای عمیقتر آرایهها پیچیده میشود.
در شرایط معمول،myfunction دو پارامتر را میپذیرد.آرایه مقدار پارامتر به عنوان اولین، نام کلید به عنوان دومین. اگر پارامترهای اختصاصی ارائه شوند userdata ، به عنوان سومین پارامتر به کاربردهای بازگشتی منتقل خواهد شد.
اگر کاربردهای بازگشتی نیاز به عمل مستقیم بر روی مقادیر آرایه دارد، میتوان اولین پارامتر کاربردهای بازگشتی را به عنوان ارجاع مشخص کرد، بنابراین هرگونه تغییر در این واحدها نیز باعث تغییر آرایه اصلی خواهد شد.
جزئیات فنی
مقدار بازگشتی: | اگر موفق شود TRUE برمیگرداند، در غیر این صورت FALSE. |
نسخه PHP: | 5+ |