php数据结构详解 php数据类型有哪些

什么是PHP?PHP是超文本预处理器php数据结构详解 , 是一种通用开源脚本语言 。
PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法 。利于学习,使用广泛,主要适用于Web开发领域 。
优点php数据结构详解:
1、流行,容易上手
PHP是目前最流行的编程语言,这毋庸置疑 。它驱动全球超过2亿多个网站 , 有全球超过81.7%的公共网站在服务器端采用PHP 。PHP常用的数据结构都内置了,使用起来方便简单,也一点都不复杂 , 表达能力相当灵活 。
2、开发职位很多
在服务器端的网站编程中PHP会更容易帮助你找到工作 。很多互联网相关企业都在使用PHP开发框架,所以可以说市场对PHP的开发程序员的需求还是比较大的 。
3、仍然在不断发展
PHP在不断兼容着类似closures和命名空间等技术 , 同时兼顾性能和当下流行的框架 。版本是7之后,一直在提供更高性能的应用 。
4、可植入性强
PHP 语言在补丁漏洞升级过程中,核心部分植入简单易行,且速度快 。
5、拓展性强
PHP 语言在数据库应用过程中,可以从数据库调取各类数据 , 执行效率高 。
扩展资料php数据结构详解:
缺点
1、PHP的解释运行机制
在 PHP 中,所有的变量都是页面级的,无论是全局变量, 还是类的静态成员,都会在页面执行完毕后被清空 。
2、设计缺陷
缺少关注PHP被称作是不透明的语言,因为没有堆栈追踪 , 各种脆弱的输入 。没有一个明确的设计哲学 。早期的PHP受到Perl的影响 , 带有out参数的标准库又是有C语言引入,面向对象的部分又是从 C++和Java学来的 。
3、对递归的不良支持
PHP并不擅长递归 。它能容忍的递归函数的数量限制和其php数据结构详解他语言比起来明显少 。
参考资料来源:百度百科—PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例队列这种数据结构更简单,就像我们生活中排队一样 , 它的特性是先进先出(FIFO) 。
PHP
SPL中SplQueue类就是实现队列操作,和栈一样,它也可以继承双链表(SplDoublyLinkedList)轻松实现 。
SplQueue类摘要如下:
SplQueue简单使用如下:
复制代码
代码如下:
$queue
=
new
SplQueue();
/**
*
可见队列和双链表的区别就是IteratorMode改变了而已,栈的IteratorMode只能为:
*
(1)SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_KEEP
(默认值,迭代后数据保存)
*
(2)SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_DELETE
(迭代后数据删除)
*/
$queue-setIteratorMode(SplDoublyLinkedList::IT_MODE_FIFO
|
SplDoublyLinkedList::IT_MODE_DELETE);
//SplQueue::enqueue()其实就是
SplDoublyLinkedList::push()
$queue-enqueue('a');
$queue-enqueue('b');
$queue-enqueue('c');
//SplQueue::dequeue()其实就是
SplDoublyLinkedList::shift()
print_r($queue-dequeue());
foreach($queue
as
$item)
{
echo
$item
.
PHP_EOL;
}
print_r($queue);
而优先队列SplPriorityQueue是基于堆(后文介绍)实现的 。
SplPriorityQueue的类摘要如下:
SplPriorityQueue简单使用:
$pq
=
new
SplPriorityQueue();
$pq-insert('a',
10);
$pq-insert('b',
1);
$pq-insert('c',
8);
echo
$pq-count()
.PHP_EOL;
//3
echo
$pq-current()
.
PHP_EOL;
//a

推荐阅读