美文网首页
PHP PSR-4规范 和 SPL标准库

PHP PSR-4规范 和 SPL标准库

作者: wyc0859 | 来源:发表于2019-02-15 12:34 被阅读0次

    PSR-4

    本 PSR 是关于由文件路径自动载入对应类的相关规范;是对PSR-0的修改,属于补充规范

    此处的“类”泛指所有的class类、接口、traits可复用代码块以及其它类似结构。

    一个完整的类名需具有以下结构:
    <命名空间>(<子命名空间>)*<类名>
    完整的类名必须要有一个顶级命名空间,被称为 "vendor namespace";
    完整的类名可以有一个或多个子命名空间;
    完整的类名必须有一个最终的类名;
    完整的类名中任意一部分中的下滑线都是没有特殊含义的;
    完整的类名可以由任意大小写字母组成;
    所有类名都必须是大小写敏感的。
    当根据完整的类名载入相应的文件……

    末尾的类名必须与对应的以 .php 为后缀的文件同名。
    自动加载器(autoloader)的实现一定不能抛出异常、一定不能触发任一级别的错误信息以及不应该有返回值。


    SPL标准库 -- SPL四种常用的数据结构

    栈 SplStack

    先进后出的原则

    $stack=new SplStack();
    $stack->push('data1');
    $stack->push('data2');
    
    echo $stack->pop(); //data2
    echo $stack->pop(); //data1
    

    队列 SplQueue

    先进先出,后进后出的原则

    $stack=new SplQueue();
    $stack->enqueue('data1');
    $stack->enqueue('data2');
    
    echo $stack->dequeue(); //data1
    echo $stack->dequeue(); //data2
    

    堆 SplHeap

    堆(Heap)就是为了实现优先队列而设计的一种数据结构
    根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。
    先进先出,后进后出的原则

     $stack=new SplMinHeap();  //最小堆
    $stack->insert('data1');
    $stack->insert('data2');
    
    echo $stack->extract(); //data1
    echo $stack->extract(); //data2
    

    固定尺寸数组 SplFixedArray

    $array=[];
    $array[0]=0;
    $array[6]=6;
    var_dump($array);  //只有0和6
    
    $arr = new SplFixedArray(10);  //固定尺寸数组
    $arr[0]=0;
    $arr[6]=6;
    var_dump($arr);  //0到9
    

    相关文章

      网友评论

          本文标题:PHP PSR-4规范 和 SPL标准库

          本文链接:https://www.haomeiwen.com/subject/kuupeqtx.html