PHP array_diff_uassoc() 函数
实例
比较两个数组的键名和键值(使用用户自定义函数来比较键名),并返回差集:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("d"=>"red","b"=>"green","e"=>"blue"); $result=array_diff_uassoc($a1,$a2,"myfunction"); print_r($result); ?>
定义和用法
array_diff_uassoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。
ຄວາມເຫັນ:ຕົວອາວຸດທີ່ກວດກາບັນທຶກວັດຕະວັດຖານແລະຄວາມຕາຍຫຼືຫຼາຍຂອງສະແດງທີ່ຈະພິຈາລະນາບັນທຶກວັດຕະວັດຖານ.
ຕົວອາວຸດທີ່ກວດກາບັນທຶກວັດຕະວັດຖານແລະຄວາມຕາຍຫຼືຫຼາຍຂອງສະແດງຂອງສອງ(ຫຼືຫຼາຍ)ສະແດງຂອງລະບົບທີ່ກວດກາ, ກັບຄືນສະແດງສະແດງລະບົບທີ່ຢູ່ໃນarray1) but not in any other parameter array (array2 or array3 etc.) key names and key values.
ຄຳຂອງຕົວອາວຸດ
array_diff_uassoc(array1,array2,array3...myfunction);
ພິດປະກາດ | ອະທິບາຍ |
---|---|
array1 | ສຳຄັນ. ສະແດງລະບົບທີໜຶ່ງທີ່ຈະປະກອບກັບລະບົບອື່ນ. |
array2 | ສຳຄັນ. ສະແດງລະບົບທີ່ຈະປະກອບກັບລະບົບທີໜຶ່ງ. |
array3,... | ສຳຄັນ. ສະແດງລະບົບທີ່ຈະປະກອບກັບລະບົບທີໜຶ່ງ. |
myfunction | ສຳຄັນ. ກຳນົດຄຳຂອງຕົວອາວຸດທີ່ສາມາດເອິກຫຼືພິຈາລະນາຄວາມ. ຖ້າຄຳປະຕິບັດຄັດບັນປະຕິບັດຂອງລະບົບທໍາອິດຍັງຕໍ່າຫຼືຫຼາຍກວ່າຄຳປະຕິບັດຄັດບັນປະຕິບັດຂອງລະບົບທີສອງ, ຕົວອາວຸດການການປະຕິບັດຄວາມຕ້ອງມີຄຳຕອບກັບທີ່ໜ້ອຍຫຼືຫຼາຍກວ່າ 0. |
ອະທິບາຍ
ການນຳໃຊ້ຕົວອາວຸດ array_diff_uassoc() ທີ່ໃຊ້ຕົວອາວຸດ (callback) ສຳລັບການກວດກາບັນທຶກເປັນພິດປະກາດຂອງສອງຫຼືຫຼາຍສະແດງຂອງລະບົບຂັ້ນ. ກັບຄືນສະແດງສະແດງລະບົບຂອງລະບົບທີ່ຢູ່ໃນ array1 中但是不在任何其他参数数组中的值。
But not in any other parameter array.
Note that, unlike the array_diff() function, key names are also compared.
The key names in the returned array remain unchanged.
Technical Details
Return value: | Returns an array difference set that includes all values in the compared arrays (array1) but not in any other parameter array (array2 or array3 etc.) key names and key values. |
PHP Version: | 5+ |
More Examples
Example 1
Compare the key names and key values of three arrays (using a user-defined function to compare key names) and return the difference set:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"red","b"=>"green","d"=>"blue"); $a3=array("e"=>"yellow","a"=>"red","d"=>"blue"); $result=array_diff_uassoc($a1,$a2,$a3,"myfunction"); print_r($result); ?>