شرح صفوف ومحتوى الفقرة
عندما تحتاج أن تطغى المصفوفة اللاحقة على السابقة في المفاتيح النصية والرقمية معاً (مثل معرفات المنتجات أو المستخدمين)، استخدم array_replace() بدلاً من array_merge().
- تحافظ
array_replace($base, $updates)على المفاتيح الرقمية الدقيقة دون إعادة ترقيمها أو تكرار عناصرها. - أي مفتاح موجود في
$updatesيستبدل المفتاح المطابق في$base، وتُضاف المفاتيح الجديدة كما هي. - للمصفوفات المتداخلة، تقوم
array_replace_recursive()بتحديث القيم الفرعية دون مسح المفاتيح المجاورة.
على عكس array_merge()، قامت array_replace() بتحديث مفتاح المنتج الرقمي 102 في مكانه إلى 64.00 وحافظت على جميع المعرفات الرقمية.
PHP
<?php
$prices = [101 => 45.00, 102 => 80.00, 103 => 120.00];
$special = [102 => 64.00, 104 => 30.00];
$catalog = array_replace($prices, $special);
foreach ($catalog as $id => $price) {
echo "#$id: $price | ";
}
echo "\n";