Fonksiyon array_uintersect

array_uintersect fonksiyonu, değerleri karşılaştırmak için kullanıcı tanımlı bir callback fonksiyonu kullanarak dizilerin kesişimini hesaplar. İlk dizide bulunan ve diğer tüm dizilerde de mevcut olan tüm öğeleri içeren bir dizi döndürür. Değer karşılaştırması, kullanıcı tanımlı callback fonksiyonu aracılığıyla yapılır.

Sözdizimi

phparray_uintersect(array $array1, array $array2, ..., callable $value_compare_func): array;

Örnek

İki dizinin kesişimini, değerlerini bir callback fonksiyonu kullanarak karşılaştırarak bulalım:

php<?php
  $array1 = [1, 2, 3, 4, 5];
  $array2 = [2, 4, 6, 8, 10];
  
  $res = array_uintersect($array1, $array2, function($a, $b) {
    if ($a === $b) {
      return 0;
    }
    return ($a > $b) ? 1 : -1;
  });
  
  print_r($res);
?>

Kodun çalıştırılmasının sonucu:

php[2, 4]

Örnek

Dizi dizilerini kullanıcı tanımlı bir fonksiyon kullanarak karşılaştırma:

php<?php
  $array1 = ['a', 'b', 'c', 'd', 'e'];
  $array2 = ['b', 'd', 'f', 'h', 'j'];
  
  $res = array_uintersect($array1, $array2, function($a, $b) {
    return strcmp($a, $b);
  });
  
  print_r($res);
?>

Kodun çalıştırılmasının sonucu:

php['b', 'd']

Ayrıca Bakınız