برش و جایگزینی (array_splice)
تابع «array_splice» برای «برش و جایگزینی» بخش هایی از آرایه است. یعنی چند عنصر حذف می شود و عناصر جدید وارد می شود. مثل بریدن چند برگه از دفتر و گذاشتن برگه های تازه.
تعریف و کاربرد
array_splice عناصر انتخابی را حذف می کند و با عناصر جدید جایگزین می کند. همچنین آرایه «حذف شده ها» را برمی گرداند. کلیدها در آرایه جایگزین حفظ نمی شوند.
سینتکس (Syntax)
array_splice($array, $start, $length, $replacement);
مثال 1: حذف و جایگزینی
دو عنصر اول حذف می شود. سپس دو رنگ جدید جایگزین می شود.
<?php
$a1 = array("a" => "red", "b" => "green", "c" => "blue", "d" => "yellow");
$a2 = array("a" => "purple", "b" => "orange");
array_splice($a1, 0, 2, $a2);
print_r($a1);
?>
مثال 2: خروجی عناصر حذف شده
اینجا فقط آرایه عناصر حذف شده را چاپ می کنیم.
<?php
$a1 = array("a" => "red", "b" => "green", "c" => "blue", "d" => "yellow");
$a2 = array("a" => "purple", "b" => "orange");
print_r(array_splice($a1, 0, 2, $a2));
?>
مثال 3: درج بدون حذف (length=0)
طول صفر یعنی چیزی حذف نمی شود. فقط درج از محل start انجام می شود.
<?php
$a1 = array("0" => "red", "1" => "green");
$a2 = array("0" => "purple", "1" => "orange");
array_splice($a1, 1, 0, $a2);
print_r($a1);
?>
نکته: start منفی یعنی شمارش از انتهای آرایه. length منفی یعنی توقف به اندازه آن از انتها.
لینک های داخلی
برای مرور برش و جایگزینی همین صفحه را نگه دار. همچنین ببین array_slice برای برش بدون تغییر اصل، و array_shift برای حذف اولین عنصر.
گام های عملی سریع
- آرایه نمونه بساز.
- start و length مناسب تعیین کن.
- در صورت نیاز replacement بده.
جمع بندی سریع
- array_splice حذف و درج را یکجا انجام می دهد.
- آرایه حذف شده ها را برمی گرداند.
- start و length انعطاف پذیر هستند.
- کلیدها در جایگزینی حفظ نمی شوند.