انتقل إلى محتوى الدرس

Shifting and Prepending Queue Items إضافة وسحب عناصر بداية المصفوفة بـ unshift و shift

تحكم في أطراف المصفوفة عبر array_push وarray_pop وarray_shift وarray_unshift، واقتطع أو استبدل الشرائح بـ array_slice وarray_splice.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

يعالج الطابور بنمط (أول ما يدخل هو أول ما يخرج FIFO) العناصر حسب ترتيب وصولها عبر الإضافة أو السحب من بداية المصفوفة بدالتي array_unshift() وarray_shift().

  • تُدرج array_unshift($queue, $item1, $item2) عنصراً أو أكثر في بداية المصفوفة بنفس الترتيب الممرر.
  • تسحب array_shift($queue) أول عنصر في بداية المصفوفة وتحذفه وترجع قيمته.
  • إن الجمع بين الإلحاق في النهاية $queue[] = $job والسحب من البداية array_shift($queue) يكوّن طابوراً قياسياً FIFO.

تضع array_unshift() المهمة "verify-payment" في مقدمة الطابور، ثم تسحبها array_shift() لتنفيذها أولاً.

PHP
<?php
$jobs = ["send-receipt", "sync-stock"];
array_unshift($jobs, "verify-payment");
$jobs[] = "archive-order";

$currentJob = array_shift($jobs);
echo "Processing: $currentJob\n";
echo "Next in queue: " . implode(", ", $jobs) . "\n";