Code Tu Tam

Hàm array_diff_assoc trong PHP là gì ?

Rate this post

Hàm array_diff_assoc trong PHP có nhiệm vụ lấy ra những phần tử có KEY và VALUE mà chỉ xuất ở mảng đầu tiên mà không có ở các mảng sau.Hàm này tương thích với PHP 5, PHP 7.

Cú pháp hàm array_diff_assoc trong PHP

array_diff_assoc ( array $array1 , array $array2 [, array $... ] ) : array

Hàm array_diff_assoc có giá trị truyền vào là n mảng, tức là bạn có thể truyền vào bao nhiêu mảng tùy thích, và giá trị trả về sẽ là một mảng chưa các phần tử mà chỉ tồn tại ở mảng đầu tiên và không tồn tại ở các mảng sau.

<?php 
Trong ví dụ này bạn có thể thấy trong mảng $array1, có phần tử số 2,3,4 không tồn tại ở mảng $array2.
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

Và kết quả trả về sẽ là

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

Ví dụ số 2 khi có cùng giá trị KEYVALUE

<?php
$array1 = array(0, 1, 2);
$array2 = array("00", "01", "2");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

Trong ví dụ này, cả hai mảng đều có 3 phần tử, tương ứng key sẽ là 0,1,2. Như vậy có thể thấy 2 trong $array1 == “2” trong $array2, và kết quả là:

Array
(
    [0] => 0
    [1] => 1
    )

Lưu ý: Hàm này chỉ kiểm tra một chiều của mảng n chiều. Nên khi kiểm tra với mảng n chiều bạn có thể dùng cách sau:

Array_diff_assoc ($ Array1 [0], $ Array2 [0]); .

Lưu ý: Đảm bảo các đúng thứ tự các tham số truyền vào. Khi so sánh với các mảng có nhiều KEY hơn.Mảng cần so sánh phải là mảng đầu tiên.

Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm array_diff_assoc trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé.

 

 

 

Exit mobile version