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