194 of 410 menu

Hàm array_udiff_assoc

Hàm array_udiff_assoc trả về một mảng chứa tất cả các phần tử của mảng đầu tiên, mà không có mặt trong các mảng tiếp theo. Việc so sánh khóa được thực hiện bởi cơ chế tích hợp sẵn của PHP, còn việc so sánh giá trị - thông qua hàm callback do người dùng cung cấp.

Cú pháp

array_udiff_assoc(array $array1, array $array2, ..., callable $value_compare_func): array

Ví dụ

So sánh các mảng với hàm do người dùng định nghĩa:

<?php function compare($a, $b) { return $a <=> $b; } $array1 = ["a" => "green", "b" => "brown", "c" => "blue"]; $array2 = ["a" => "green", "b" => "yellow", "d" => "blue"]; print_r(array_udiff_assoc($array1, $array2, "compare")); ?>

Kết quả thực thi mã:

Array ( [b] => brown [c] => blue )

Ví dụ

So sánh với chỉ mục số:

<?php function numCompare($a, $b) { return $a - $b; } $array1 = [10 => "apple", 20 => "banana", 30 => "cherry"]; $array2 = [10 => "pear", 20 => "banana", 40 => "cherry"]; print_r(array_udiff_assoc($array1, $array2, "strcmp")); ?>

Kết quả thực thi mã:

Array ( [10] => apple [30] => cherry )

Ví dụ

So sánh đối tượng phức tạp:

<?php class Product { public $id; public $name; public function __construct($id, $name) { $this->id = $id; $this->name = $name; } } function objCompare($a, $b) { return strcmp($a->name, $b->name); } $products1 = [ "p1" => new Product(1, "Laptop"), "p2" => new Product(2, "Phone") ]; $products2 = [ "p1" => new Product(3, "Tablet"), "p3" => new Product(2, "Phone") ]; print_r(array_udiff_assoc($products1, $products2, "objCompare")); ?>

Kết quả thực thi mã:

Array ( [p1] => Product Object ( [id] => 1 [name] => Laptop ) )

Xem thêm

  • hàm array_diff_assoc,
    tính toán sự khác biệt giữa các mảng với việc kiểm tra chỉ mục
  • hàm array_udiff,
    tính toán sự khác biệt giữa các mảng với hàm callback (không kiểm tra chỉ mục)
Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối