English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Manuale di base di PHP

Manuale avanzato di PHP

PHP & MySQL

Manuale di riferimento di PHP

Uso e esempio della funzione array_diff_ukey() di PHP

PHP Array 函数手册

La funzione array_diff_ukey() di PHP confronta gli array e restituisce la differenza tra due array (solo confronta i nomi delle chiavi, utilizzando una funzione di confronto delle chiavi definita dall'utente).

Definizione e uso

array_diff_ukey()L'uso di una funzione definita dall'utente confronta solo le chiavi di due (o più) array e restituisce un array che contiene gli elementi presenti in array1 ma non presenti in array2 o array3 e così via.

Questa funzione è diversa daarray_diff()La funzione, perché array_diff() confronta i valori, mentre questa funzione confronta le chiavi.

Questa funzione è diversa daarray_diff_assoc()La funzione, perché array_diff_assoc() utilizza un algoritmo interno per confrontare gli indici, mentre questa funzione utilizza una funzione definita dall'utente.

语法

array_diff_ukey ( $array1, $array2 [, $array3..., callback $key_compare_func] );

参数

序号参数及说明
1

array1(必填)

第一个数组是将与其他数组进行比较的数组。

2

array2(必填)

它是一个要与第一个数组进行比较的数组

3

array3(可选)

它是一个要与第一个数组进行比较的数组

4

key_compare_func(必填)

在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。

返回值

此函数返回一个数组,其中包含来自array1的所有其他数组中不存在的所有条目。

PHP版本

此函数最早是在PHP版本5.1.0中引入的。

在线示例

array_diff_ukey()与key_compare_func()使用示例-

<?php
   function key_compare_func($a, $b) {
      if ($a === $b) {
         return 0;
      }
      return ($a > $b)? 1: -1;
   }
   $input1 = array(0=>"banana", 1=>"orange", 2=>"grapes");
   $input2 = array(3=>"apple",1=>"apricot", 5=>"mango");
   print_r(array_diff_ukey($input1,$input2,"key_compare_func"));
?>
测试看看‹/›

输出结果:

Array
(
    [0] => banana
    [2] => grapes
)

在线示例

array_intersect_ukey() 示例-

<?php
   function key_compare_func($a, $b) {
      if ($a === $b) {
         return 0;
      }
      return ($a > $b)? 1: -1;
   }
   $input1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
   $input2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
   print_r(array_diff_ukey($input1,$input2,"key_compare_func"));
?>
测试看看‹/›

输出结果:

Array
(
    [red] => 2
    [purple] => 4
)

PHP Array 函数手册