PHP--SPL扩展学习笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP--SPL扩展学习笔记相关的知识,希望对你有一定的参考价值。

    一. SPL是干嘛的
        SPL是用于解决典型问题(standard problems)的一组接口与类的集合。 
        
        数据结构:
          1.实现双向列表
          SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {} 
          
          2.栈(Stack)是一种特殊的线性表,因为它只能在线性表的一端进行插入或删除元素(即进栈和出栈)
          SplStack extends SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {} 
         
          3.队列(SplQueue) 就像我们生活中排队一样,和栈一样,它的特性是先进先出(FIFO)。
          SplQueue extends SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {}
 
          4.优先队列SplPriorityQueue是基于堆(后文介绍)实现的。
          SplPriorityQueue implements Iterator , Countable {}
          
          5.堆(Heap)就是为了实现优先队列SplPriorityQueue而设计的一种数据结构,它是通过构造二叉堆(二叉树的一种)实现。
           abstract SplHeap implements Iterator , Countable {}

          6.阵列 处理巨大数量的固定长度数组是采用 
             SplFixedArray implements Iterator , ArrayAccess , Countable {}
     
          7.映射  用来存储一组对象的,特别是当你需要唯一标识对象的时候。
             SplObjectStorage implements Countable , Iterator , Serializable , ArrayAccess {}

  

 

以上是关于PHP--SPL扩展学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

学习笔记:python3,代码片段(2017)

PHP SPL RecursiveIterator::getChildren() 究竟返回了啥?

PHP、SPL、ArrayAccess 接口

php spl_autoload_register() 函数

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

php spl库的使用