PHP ฟังก์ชัน array_walk()

ตัวอย่าง

ประกาศฟังก์ชันที่ใช้งานโดยผู้ใช้งานในแต่ละองค์ประกอบของตัวแปร array

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

การทดสอบ

การกำหนดและการใช้งาน

ฟังก์ชัน array_walk() จะประกาศฟังก์ชันที่ใช้งานโดยผู้ใช้งานในแต่ละองค์ประกอบของตัวแปร array ในฟังก์ชัน ชื่อตัวแปรและค่าตัวแปรเป็นตัวอักษร

หมายเหตุ:คุณสามารถกำหนดตัวแปรแรกของฟังก์ชันที่ใช้งานโดยผู้ใช้งานเป็นอ้างอิง คือ &$value มาเพื่อเปลี่ยนค่าของตัวแปรใน array (ดูตัวอย่างที่ 2)

คำแนะนำ:ถ้าต้องการปฏิบัติต่อตัวแปร array ที่มีรูปแบบ array ภายใน array ให้ใช้ array_walk_recursive() ฟังก์ชัน

รูปแบบการใช้งาน

array_walk(array,myfunction,userdata...)
ตัวแปร คำอธิบาย
array สำคัญ กำหนดตัวแปร array
myfunction สำคัญ ชื่อฟังก์ชันที่ใช้งานโดยผู้ใช้งาน
userdata,... ตัวแปรที่เป็นที่เลือกใช้ กำหนดฟังก์ชันที่ใช้งานโดยผู้ใช้งาน คุณสามารถส่งตัวแปรที่เป็นที่เลือกใช้เข้าไปในฟังก์ชันนี้ได้หลายตัว

คำอธิบาย

ฟังก์ชัน array_walk() จะประกาศฟังก์ชันที่ใช้กับแต่ละองค์ประกอบของตัวแปร array ถ้าประสบความสำเร็จก็จะกลับค่า TRUE ไม่เช่นนั้นก็จะกลับค่า FALSE

ในขณะที่ปกติ myfunction รับค่าของตัวแปรสองarray ค่าของตัวแปรเป็นตัวอักษรแรก ชื่อตัวแปรเป็นตัวอักษรที่สอง หากมีตัวแปรที่เป็นที่เลือกใช้ userdata จะถูกส่งเข้าไปในฐานะตัวอักษรที่สามส่งให้กับฟังก์ชันโควร์น

ถ้า myfunction ถ้าฟังก์ชันต้องการตัวแปรมากกว่าที่ให้ค่าตัวแปร myfunction ในระหว่างที่ฟังก์ชัน array_walk() กำลังทำงานจะสร้างคำเตือนระดับ E_WARNING

หมายเหตุ:ถ้าฟังก์ชันแบล็คโฮล์เข้าที่ต้องใช้ตรงกับค่าในตัวแปรขององค์ประกอบ สามารถกำหนดค่าแรกของฟังก์ชันแบล็คโฮล์เป็นอ้างอิง ($&value) (ดูตัวอย่าง 3)

หมายเหตุ:ของชื่อส่วนประกอบและ userdata ส่งมอบไปยัง myfunction ภายในคือ PHP 4.0 ที่เพิ่มเข้ามาใหม่

รายละเอียดเทคนิค

ค่าที่กลับค่า: ถ้าประสบความสำเร็จก็จะกลับค่า TRUE และถ้าไม่ประสบความสำเร็จก็จะกลับค่า FALSE。
PHP version: 4+

ตัวอย่างเพิ่มเติม

ตัวอย่าง 1

ตั้งค่าตัวแปร:

<?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");
?>

การทดสอบ

ตัวอย่าง 2

เปลี่ยนค่าขององค์ประกอบในตัวแปรธรรมดา (โปรดติดตาม &$value):

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

การทดสอบ