PHP array_walk() 函数
ຄວາມພາບ
ນຳໃຊ້ຫຼັກການພາສາທີ່ຕ້ອງການສ້າງຕໍ່ແຕ່ແຕ່ກຸ່ມຂອງຫຼັກການ:
<?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() ຈະນຳໃຊ້ຫຼັກການພາສາທີ່ຕ້ອງການສ້າງຕໍ່ແຕ່ແຕ່ກຸ່ມຂອງຫຼັກການ. ໃນຫຼັກການພາສາ, ຄຳກວນຫຼັກການ ແລະ ຄູ່ມືຄວາມພາບແມ່ນຄວາມພາບ.
ໝາຍ:ທ່ານສາມາດຕິດຕັ້ງຄວາມພາບທີໜຶ່ງຂອງຫຼັກການພາສາທີ່ຕ້ອງການສ້າງໃຫ້ເປັນການຫຼອກລະບຽບ &$value, ເພື່ອປ່ຽນຄູ່ມືຄວາມພາບຂອງຫຼັກການ (ກໍານົດຫຼັກການຄືນ 2).
ຂໍ້ສັງເກດ:ຖ້າທ່ານຕ້ອງການດຳເນີນງານຫຼັກການຂັ້ນວົງໄວ້ຫຼາຍຫຼັກການ (ຫຼັກການໄວ້ຢູ່ໃນຫຼັກການອື່ນໆ), ຂໍ້ສັງເກດຈະຕ້ອງການສ້າງ. array_walk_recursive() ຫຼັກການ.
ຄຳເຕັກນິກ
array_walk(array,myfunction,userdata...)
ຄວາມພາບ | ອະທິບາຍ |
---|---|
array | ສະເພາະ. ກໍານົດຫຼັກການ. |
myfunction | ສະເພາະ. ກໍານົດຫຼັກການພາສາທີ່ຕ້ອງການ. |
userdata,... | ທາງປະຈຳຕົວເລື່ອງ. ກໍານົດຫຼັກການພາສາທີ່ຕ້ອງການສ້າງດ້ວຍຄວາມພາບ. ທ່ານສາມາດສົ່ງຫຼັກການພາສາຫຼາຍຫຼັກການຄືນຫຼັງຈາກຄວາມພາບ. |
ອະທິບາຍ
ຫຼັກການ array_walk() ຈະນຳໃຊ້ຫຼັກການຫຼອກລະບຽບຕໍ່ແຕ່ກຸ່ມຂອງຫຼັກການ. ຖ້າປະສົບຜົນຢ່າງມີສຳພັນຈະກັບຄືນ TRUE, ບໍ່ມີສຳພັນຈະກັບຄືນ FALSE.
ພາຍໃນການດຳເນີນງານທົ່ວໄປ myfunction ຍິນຍອມຮັບສອງຄວາມພາບ.array ຄູ່ມືຄວາມພາບຈະຖືກສົ່ງຫຼັງຈາກຄຳກວນຫຼັກການຫຼອກລະບຽບທີສອງ. ຖ້າມີຄວາມພາບທາງປະຈຳຕົວເລື່ອງ userdata ,ຈະຖືກສົ່ງຫາຫຼັກການຫຼອກລະບຽບຫຼັງຈາກຫຼັກການຫຼອກລະບຽບທີສາມ.
ຖ້າ myfunction ທີ່ຕ້ອງການຂອງຫົວຂໍ້ບູລິບບອບຈະຫຼາຍກວ່າຂອບຂອງຫົວຂໍ້ບູລິບບອບທີ່ມູນຄ່າ, ທຸກຄັ້ງທີ່ມີການຂໍ້ມູນຄ່າ array_walk() ຈະມີການກັບຄືນກັບ FALSE. myfunction ທີ່ຈະມີການສ້າງຂໍ້ບອກອັນຕໍ່ມາສະເພາະ 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); ?>