PHP队列

WBOY
WBOY原创
2024-08-29 13:01:131269浏览

PHP中的队列是一种基于先进先出(First In First Out)操作的数据结构,也称为先进先出(FIFO),定义队列的四个基本操作,分别是 init、enqueue、dequeue 和 isEmpty,其中 init 操作用于创建队列队列和入队操作用于在队列尾部添加项目,或使用队列尾部和出队操作用于从队列前端或队列头部删除项目,并使用 isEmpty 操作检查队列是否为空,如果队列不包含更多项目,则返回。

广告 该类别中的热门课程 PHP 开发人员 - 专业化 | 8 门课程系列 | 3次模拟测试

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

PHP 中声明队列的语法如下:

enqueue(item_to_added_to_the_queue);
dequeue();

其中 item_to_be_added_to_the_queue 是要添加到队列末尾或队列尾部的项目。

PHP 中队列的工作

  • PHP中的队列是一种基于先进先出的数据结构,也称为先进先出。
  • 定义队列的四个基本操作,即 init、enqueue、dequeue 和 isEmpty。
  • init操作用于队列的创建。
  • 入队操作用于在队列末尾或队列尾部添加一个项目。
  • 出队操作用于从队列的前面或队列的头部删除一个项目。
  • isEmpty 操作用于检查队列是否为空;也就是说,如果队列不再包含任何项目,它就会返回。

PHP 队列示例

以下是下面提到的示例

示例#1

PHP 程序使用 enqueue() 函数从队列末尾添加项目到队列,并使用 dequeue() 函数从队列前端删除项目,并显示队列的内容:

代码:

<?php
//creating an instance of SplQueue class
$newqueue = new SplQueue();
//using enqueue() function to the add items to the queue from the tail of the queue
$newqueue->enqueue('Welcome');
$newqueue->enqueue('to');
$newqueue->enqueue('PHP');
//using rewind() function to bring the file pointer to the beginning of the queue
$newqueue->rewind();
//using valid() function to check if the queue is valid or not after using rewind() function and then displaying the elements of the queue
while($newqueue->valid()){
echo $newqueue->current(),"\n";
$newqueue->next();
}
//printing the contents of the queue in a human readable format by using print_r function
print_r ($newqueue);
//Removing the first two items from the head of the queue using dequeue() function and then displaying the contents of the queue in human readable form using print_r function
$newqueue->dequeue();
$newqueue->dequeue();
print_r ($newqueue);
?>

输出:

PHP队列

在上面的程序中,我们创建了 SplQueue() 类的实例。然后我们从队列尾部或队列末尾向队列添加项目。然后我们使用 rewind() 函数将文件指针带到队列的开头。然后,在使用 rewind() 函数之后,我们使用 valid() 函数检查队列是否有效,然后显示队列的元素。然后,我们使用 print_r 函数以人类可读的格式打印队列的内容。然后,我们使用 dequeue() 函数从队列头部删除前两项,然后使用 print_r 函数以人类可读的形式使用 dequeuer() 函数后显示队列内容。输出如上面的快照所示。

示例#2

PHP 程序使用 enqueue() 函数从队列末尾添加项目到队列,并使用 dequeue() 函数从队列前端删除项目,并显示队列的内容:

代码:

<?php
//creating an instance of SplQueue class
$newqueue = new SplQueue();
//using enqueue() function to the add items to the queue from the tail of the queue
$newqueue->enqueue('Welcome');
$newqueue->enqueue('to');
$newqueue->enqueue('EDUCBA');
//using rewind() function to bring the file pointer to the beginning of the queue
$newqueue->rewind();
//using valid() function to check if the queue is valid or not after using rewind() function and then displaying the elements of the queue
while($newqueue->valid()){
echo $newqueue->current(),"\n";
$newqueue->next();
}
//printing the contents of the queue in a human readable format by using print_r function
print_r ($newqueue);
//Removing the first two items from the head of the queue using dequeue() function and then displaying the contents of the queue in human readable form using print_r function
$newqueue->dequeue();
$newqueue->dequeue();
$newqueue->dequeue();
print_r ($newqueue);
?>

输出:

PHP队列

在上面的程序中,我们创建了 SplQueue() 类的实例。然后我们从队列尾部或队列末尾向队列添加项目。然后我们使用 rewind() 函数将文件指针带到队列的开头。

然后,在使用 rewind() 函数之后,我们使用 valid() 函数检查队列是否有效,然后显示队列的元素。然后,我们使用 print_r 函数以人类可读的格式打印队列的内容。然后我们使用 dequeue() 函数从队列头部删除所有三个项目,然后使用 print_r 函数以人类可读的形式显示使用 dequeuer() 函数后的队列内容,这是一个空队列。输出如上面的快照所示。

以上是PHP队列的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
上一篇:PHP stack下一篇:Encapsulation in PHP