Kazi array_diff_ukey

Kazi array_diff_ukey inalinganisha vitupu vya arrays kadhaa na hurudisha vipengele kutoka kwa array ya kwanza, ambavyo vitupu vyake havipo katika arrays zingine. Kwa kulinganisha vitupu hutumiwa kazi ya callback, iliyobainishwa na mtumiaji. Kigezo cha kwanza hupewekwa array kuu, mabadiliko ya mfululizo - arrays kwa kulinganisha, na mabadiliko ya mwisho - kazi ya callback.

Syntax

phparray_diff_ukey(array $array1, array $array2 [, array $... ], callable $key_compare_func): array

Mfano

Wacha tulinganishe arrays mbili kwa vitupu, tukitumia kazi ya callback strcasecmp (kulinganisha bila kuzingatia herufi kubwa/ndogo):

php<?php
  $array1 = ['A' => 1, 'b' => 2, 'C' => 3];
  $array2 = ['a' => 4, 'B' => 5];
  
  $res = array_diff_ukey($array1, $array2, 'strcasecmp');
  print_r($res);
?>

Matokeo ya utekelezaji wa kificho:

php['C' => 3]

Mfano

Wacha tulinganishe arrays tatu na kazi ya callback ya mtumiaji:

php<?php
  function keyCompare($key1, $key2) {
    return $key1 <=> $key2;
  }

  $array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
  $array2 = [1 => 'd', 4 => 'e'];
  $array3 = [2 => 'f'];
  
  $res = array_diff_ukey($array1, $array2, $array3, 'keyCompare');
  print_r($res);
?>

Matokeo ya utekelezaji wa kificho:

php[3 => 'c']

Angalia pia

  • kazi array_diff,
    ambayo inalinganisha arrays kwa thamani
  • kazi array_diff_key,
    ambayo inalinganisha arrays kwa vitupu
  • kazi array_udiff,
    ambayo inalinganisha arrays kupitia kazi ya callback