本篇文章為大家介紹一下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 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" ); $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()函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!