php中用户自定义函数比较键名的函数array_diff_ukey()
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php中用户自定义函数比较键名的函数array_diff_ukey(),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2040字,纯文字阅读大概需要3分钟。
内容图文
![php中用户自定义函数比较键名的函数array_diff_ukey()](/upload/InfoBanner/zyjiaocheng/142/a5b9883aee7643749c87b82993478a49.jpg)
实例
比较两个数组的键名(使用用户自定义函数比较键名),并返回差集:
<?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"=>"blue","b"=>"black","e"=>"blue"); $result=array_diff_ukey($a1,$a2,"myfunction"); print_r($result); ?>
定义和用法
array_diff_ukey() 函数用于比较两个(或更多个)数组的键名 ,并返回差集。
注释:该函数使用用户自定义函数比较键名!
该函数比较两个(或更多个)数组的键名,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名。
语法
array_diff_ukey(array1,array2,array3...,myfunction);
参数 | 描述 |
array1 | 必需。与其他数组进行比较的第一个数组。 |
array2 | 必需。与第一个数组进行比较的数组。 |
array3,... | 可选。与第一个数组进行比较的其他数组 |
myfunction | 必需。一个定义了可调用比较函数的字符串。如果第一个参数 <, =, > 第二个参数,相应地比较函数必须返回一个 <, =, > 0 的整数。 |
技术细节
返回值: | 返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名。 |
PHP 版本: | 5.1+ |
更多实例
实例 1
比较三个数组的键名(使用用户自定义函数比较键名),并返回差集:
<?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"=>"black","b"=>"yellow","d"=>"brown"); $a3=array("e"=>"purple","f"=>"white","a"=>"gold"); $result=array_diff_ukey($a1,$a2,$a3,"myfunction"); print_r($result); ?>
1.函数的作用:使用调用者自定义的函数,根据键值,返回数组的差集;
2.函数的参数:
@params array $array1 被比较的数组
@params array $array2 比较的数组
@params array $array3 比较的数组
...
3.注意点:
1)自定义的函数根据第一个参数小于、等于、大于分别返回小于0、等于0、大于0;
4.例子:
<?php $array1 = ['A' => 1,'B' => 2,'c' => 3,0 => 4]; $array2 = ['A' => 1,'b' => 2,'C' => 3,'0' => 4]; print_r(array_diff_ukey($array1,$array2,function($a,$b){ if($a === $b) { return 0; } return $a < $b ? -1 : 1; }));
以上就是php中用户自定义函数比较键名的函数array_diff_ukey()的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的php中用户自定义函数比较键名的函数array_diff_ukey()全部内容,希望文章能够帮你解决php中用户自定义函数比较键名的函数array_diff_ukey()所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。