SPL标准库

  • SPL是用于解决典型问题(standard problems)的一组接口与类的集合。
  • 官方地址: http://php.net/spl

常用结构示例

  • 栈(先进后出):

    $stack = new SplStack();
    $stack->push('data1');
    echo $stack->pop();
  • 队列(先进先出)

    $queue = new SplQueue();
    $queue->enquque('data1');
    echo $queue->dequque();
    • 堆的实现通过构造二叉堆(binary heap),实为二叉树的一种;由于其应用的普遍性,当不加限定时,均指该数据结构的这种实现。这种数据结构具有以下性质。
    • 任意节点小于(或大于)它的所有后裔,最小元(或最大元)在堆的根上(堆序性)。
    • 堆总是一棵完全树。即除了最底层,其他层的节点都被元素填满,且最底层尽可能地从左到右填入。
    • 将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等
    $heap = new SplMinHeap();
    $heap->insert('data1');
    echo $heap->extract();
  • 固定长度的数据

    $array = new SplFixedArray(10);
    $array[9] = 'data1';
    var_dump($array);

嗷嗷豆豆
15 声望0 粉丝

不断学习的中的一枚小菜鸟!