Hàm array_diff_assoc() trong PHP
# Description
Hàm array_diff_assoc()
trong php có tác dụng lấy ra các phần tử ở mảng thứ nhất không nằm ở tất cả các mảng còn lại. Ví dụ giá trị 'freetuts.net' chỉ có ở mảng B mà không có ở mảng A thì nó được lấy.
# Parameters
Cú pháp: array array_diff_assoc ( array $array1 , array $array2 [, array $... ] )
Trong đó:
- $array1: mảng thứ nhất
- $array2: mảng thứ hai
- ...
- $arrayn: mảng thứ n
# Return values
Trả về mảng gồm các phần tử không xuất hiện ở tất cả các mảng truyền vào.
Bài viết này được đăng tại [free tuts .net]
# Examples
Sử dụng hai tham số
Code:
$array1 = array( 'name' => 'Cường', 'website' => 'freetuts.net', 'phone' => '0979 306 603' ); $array2 = array( 'name' => 'Cường', 'website' => 'https://freetuts.net', 'phone' => '0979 306 603' ); echo '<pre>'; print_r(array_diff_assoc($array1, $array2));<br><br><br><br><br><br><br><br><br><br><br><br><br>
Result:
Array ( [website] => freetuts.net )
Explan:
Trong ví dụ này ta thấy chỉ có giá trị 'freetuts.net' mới không tồn tại mảng còn lại nên nó được lấy để trả về
Sử dụng hơn hai tham số
Code:
$array1 = array( 'name' => 'Cường', 'website' => 'freetuts.net', 'phone' => '0979 306 603' ); $array2 = array( 'name' => 'Cường', 'website' => 'https://freetuts.net', 'phone' => '0979 306 603' ); $array3 = array( 'name' => 'Cường', 'website' => 'freetuts.net', 'phone' => '0979 306 603' ); echo '<pre>'; print_r(array_diff_assoc($array1, $array2, $array3));
Result:
Array ( )
Explan:
Ta thấy cả ba giá trị ở mảng thứ nhất đều xuất hiện ở các mảng còn lại. Riêng có giá trị 'freetuts.net' là chỉ tồn tại ở mảng thứ ba nhưng vẫn không chọn. Như vậy dù giá trị đó chỉ xuất hiện ở một mảng nào đó thôi cũng không được chọn.
No more example!