اشتراک انجمنی (array_intersect_assoc)
«اشتراک انجمنی (Associative Intersect)» یعنی مقایسه کلید و مقدار باهم. تابع array_intersect_assoc() ورودی ها را می سنجد و فقط جفت های کلید/مقدار مشترک را برمی گرداند. این مثل مقایسه شماره صندلی و نام دانش آموز است.
تعریف ساده و رفتار اشتراک انجمنی
array_intersect_assoc(array1, array2, ...) هم کلید و هم مقدار را بررسی می کند. اگر هر دو در همه آرایه ها یکسان باشند، نگه داشته می شوند. سپس با کلیدهای array1 برمی گردند.
پارامترها
- array1: آرایه پایه برای مقایسه.
- array2,...: آرایه های مقایسه شونده با پایه.
مثال پایه: دو آرایه انجمنی
در این مثال، فقط جفت های کلید/مقدار دقیقاً برابر حفظ می شوند.
<?php
$a1 = array("a" => "red", "b" => "green", "c" => "blue", "d" => "yellow");
$a2 = array("a" => "red", "b" => "green", "c" => "blue");
$result = array_intersect_assoc($a1, $a2);
print_r($result);
?>
مثال سه تایی: سه آرایه انجمنی
اینجا، نتیجه فقط شامل جفت هایی است که در هر سه آرایه تکرارند.
<?php
$a1 = array("a" => "red", "b" => "green", "c" => "blue", "d" => "yellow");
$a2 = array("a" => "red", "b" => "green", "g" => "blue");
$a3 = array("a" => "red", "b" => "green", "g" => "blue");
$result = array_intersect_assoc($a1, $a2, $a3);
print_r($result);
?>
گام های عملی سریع
- آرایه پایه را مشخص کن. نامش را
array1بگذار. - آرایه های مقایسه را آماده کن. کلیدها معنادار باشند.
array_intersect_assoc()را اجرا کن. خروجی را ببین.- اگر فقط مقدار مهم است، از array_intersect استفاده کن.
نکات و لینک های مرتبط
- نکته: مقایسه نوع هم انجام می شود. برابری باید دقیق باشد.
- برای اشتراک بر اساس کلیدها، سراغ array_intersect_key برو.
- این صفحه «اشتراک انجمنی» را نشانه گذاری کن.
جمع بندی سریع
- کلید و مقدار باهم سنجیده می شوند.
- کلیدهای
array1حفظ می شوند. - برابری باید دقیق و هم نوع باشد.
- برای مقدار تنها، از
array_intersectاستفاده کن.