栈(Stack)是一种遵从后进先出(LIFO)的有序集合,新元素会被添加到栈顶,元素从栈顶移除。可以使用数组来模拟栈的行为。
/* 初始化一个栈 */
$stack = array();
/* 将元素压入栈顶 */
array_push($stack, "element1");
array_push($stack, "element2");
array_push($stack, "element3");
/* 弹出栈顶元素 */
$pop_element = array_pop($stack);
echo "The popped element is " . $pop_element;
队列(Queue)是一种遵从先进先出(FIFO)的有序集合,新元素会被添加到队列尾部,元素从队列头部移除。可以使用数组来模拟队列的行为。
/* 初始化一个队列 */
$queue = array();
/* 将元素加入队列尾部 */
array_push($queue, "element1");
array_push($queue, "element2");
array_push($queue, "element3");
/* 从队列头部移除元素 */
$remove_element = array_shift($queue);
echo "The removed element is " . $remove_element;