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

Appending and Popping Stack Items إضافة وسحب عناصر نهاية المصفوفة بـ push و pop

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

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

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

يعمل المكدس بنمط (آخر ما يدخل هو أول ما يخرج LIFO) على نهاية المصفوفة باستخدام $arr[] ودالتي array_push() وarray_pop().

  • استخدم صيغة الإلحاق المباشر $stack[] = $val عند إضافة عنصر واحد لتجنب تكلفة استدعاء الدالة.
  • استخدم array_push($stack, $v1, $v2) لإضافة عدة عناصر دفعة واحدة؛ وترجع الدالة العدد الجديد للعناصر.
  • تحذف array_pop($stack) العنصر الأخير وترجعه، أو ترجع null إذا كانت المصفوفة فارغة.

تُضاف العناصر إلى نهاية $history، ثم تسحب array_pop() آخر عنصر أُضيف ("confirm") وترجعه بزمن ثابت O(1).

مخطط توضيحي: محاكي عمليات المكدس والطابور والاقتطاع (slice / splice) في PHP
PHP
<?php
$history = ["home", "catalog"];
$history[] = "cart";
array_push($history, "checkout", "confirm");

$lastVisited = array_pop($history);
echo "Popped: $lastVisited\n";
echo "Remaining (" . count($history) . "): " . implode(" -> ", $history) . "\n";