您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP如何使用array_diff_ukey()函数?

2024/2/21 19:37:16发布17次查看
本篇文章给大家介绍一下php使用“array_diff_ukey()”函数的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
array_diff_ukey()函数是php中的内置函数。它用于使用用户定义的函数比较键的两个或多个数组, 并返回一个数组, 该数组为array1, 并且不存在其他任何array2, array3或更多…
语法如下:
array_diff_ukey($array1, $array2, $array3..., arr_diffukeyfunction)
使用参数:此函数接受最少三个参数, 而所有三个参数都是必需的, 另一个是可选的。参数说明如下:
$ array1(强制性):该数组将与其他数组进行比较(例如, 从array1比较该数组)。
$ array2(强制性): 数组与第一个数组相比。
$ array3(可选): 数组与第一个数组相比。
arr_diffukeyfunction(强制性): 这是必需的用户定义功能。定义可调用比较功能的字符串。如果第一个参数大于第二个参数, 则比较函数返回一个大于0的整数。
返回值:返回一个数组, 其中包含array1中其他数组中不存在的条目, 例如:-( arra2, arra3, arar4….more)。如果所有值都存在于其他数组中, 则该函数返回null。返回值类型是一个数组。
范例1:
input: $arr1 = array("one"=>"c program", "two"=>"php program", "three"=>"java program ");$arr2 = array("one"=>"java program", "two"=>"c++ program", "six"=>"java program");output: array( [three] => java program )explanation: first two values of arr1 are matched with arr2 and last value not matched so the function returns last value.
范例2:
input: $arr1=array("one"=>"c program", "two"=>"php program", "three"=>"java program ");$arr2=array("one"=>"java program", "two"=>"c++ program", "three"=>"java program");output: array()explanation: all values are matched with arr2 so function return null values.
让我们以一个例子来了解array_diff_ukey()函数。
程序1:获取两个数组(array1和array2)并使用用户定义的键比较函数(diffukeyfunction)。
php语言的简单解决方案:
<?php // program of array_diff_ukey function in php function arr_diffukeyfunction( $one , $two ){ if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1;} // driver code $arr1 = array ( "one" => "c program" , "two" => "php program" , "three" => "java program ");$arr2 = array ( "one" => "java program" , "two" => "c++ program" , "six" => "java program"); $result = array_diff_ukey ( $arr1 , $arr2 , "arr_diffukeyfunction" );print_r( $result );?>
输出如下:
array( [three] => java program )

程序2:获取三个数组(array1, array2和arra3), 并使用用户定义的键比较函数(diffukeyfunction)。
<?php // program of array_diff_ukey function in php function arr_diffukeyfunction( $one , $two ){ if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1;} // driver code $arr1 = array ( "one" => "c program" , "two" => "php program" , "three" => "java program ");$arr2 = array ( "one" => "xml program" , "two" => "c++ program" , "four" => "css program");$arr3 = array ( "five" => "mvc program" , "six" => "c# program" , "one" => "asp .net program"); $result = array_diff_ukey ( $arr1 , $arr2 , $arr3 , "arr_diffukeyfunction" );print_r( $result );?>
输出如下:
array( [three] => java program )

程序3:
如果所有值在其他数组中都匹配, 则返回null
<?php // program of array_diff_ukey function in phpfunction arr_diffukeyfunction( $one , $two ){ if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1;} // driver code $arr1 = array ( "one" => "c program" , "two" => "php program");$arr2 = array ( "one" => "java program" , "two" => "c++ program"); $result = array_diff_ukey ( $arr1 , $arr2 , "arr_diffukeyfunction" );print_r( $result );?>
输出如下:
array()
示例4:
如果仅使用一个数组(array1), 并且使用用户定义的键比较函数(diffukeyfunction), 则没有输出, 并且给出" runtime error"警告消息。
<?php //program of array_diff_ukey function in php function arr_diffukeyfunction( $one , $two ){ if ( $one === $two ) { return 0; } return ( $one > $two ) ? 1 : -1;} // driver code $arr1 = array ( "one" => "c program" , "two" => "php program" , "three" => "java program "); //take only one array $result = array_diff_ukey ( $arr1 , "arr_diffukeyfunction" );print_r( $result );?>
输出如下:
no output
警告:
php warning: array_diff_ukey(): at least 3 parameters are required, 2 given in /home/c0177af9f69e897ad93cc9855a9ae415.php on line 23
推荐学习:php视频教程
以上就是php如何使用array_diff_ukey()函数?的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product