Συνάρτηση array_intersect_assoc
Η συνάρτηση array_intersect_assoc επιστρέφει έναν πίνακα, που περιέχει όλα τα στοιχεία του πρώτου πίνακα, τα οποία υπάρχουν σε όλους τους υπόλοιπους πίνακες που μεταβιβάστηκαν, ενώ συγκρίνονται τόσο τα κλειδιά όσο και οι τιμές. Η πρώτη παράμετρος είναι ο κύριος πίνακας, οι επόμενες παράμετροι είναι πίνακες για σύγκριση.
Σύνταξη
array_intersect_assoc(array1, array2, ...): array;
Παράδειγμα
Ας βρούμε την τομή δύο πινάκων με έλεγχο κλειδιών:
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['a' => 1, 'c' => 4, 'd' => 5];
$res = array_intersect_assoc($arr1, $arr2);
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
['a' => 1]
Παράδειγμα
Σύγκριση τριών πινάκων με διαφορετικά κλειδιά και τιμές:
<?php
$arr1 = [1, 2, 3, 4];
$arr2 = [1, 3, 4, 5];
$arr3 = [1, 2, 4, 6];
$res = array_intersect_assoc($arr1, $arr2, $arr3);
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
[0 => 1]
Παράδειγμα
Όταν δεν υπάρχουν αντιστοιχίες σε κλειδιά και τιμές:
<?php
$arr1 = ['a' => 1, 'b' => 2];
$arr2 = ['c' => 1, 'd' => 2];
$res = array_intersect_assoc($arr1, $arr2);
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
[]
Δείτε επίσης
-
τη συνάρτηση
array_intersect,
που υπολογίζει την τομή πινάκων χωρίς έλεγχο κλειδιών -
τη συνάρτηση
array_diff_assoc,
που υπολογίζει τη διαφορά πινάκων με έλεγχο κλειδιών