psr-0 与 psr-4 标准
最近一直想整理一下关于php的自动加载类的方式进行一个总结。每个人都想在自己的代码中少一些include 和 require 的操作, 这样不仅能方便代码编写,而且能够减少不必要的引入类文件冲突的问题。下面我们分别来介绍 psr-0 和 psr-4 规范.
PSR-0规范
1 命名空间必须与绝对路径一致
2 类名首字母必须大写
3 除去入口文件外,其他“.php”必须只有一个类
4 php类文件必须自动载入,不采用include等
5 单一入口
案例
当有一个项目的路径是如下图所示:
Request.php 的代码是:
<?php
class Http_Request{
// ... 这里是类代码
public function __construct(){
echo '自动加载成功';
}
}
?>
当我们的 index.php 文件需要引入 Request.php 里的类时 ,我们发现直接写路径是十分困难的事情,也许会因为太长而不小心写错.因此引入了psr-0的这种自动加载规范。
index.php 代码
<?php
// 引入了我们做好的 自动加载类方法
require_once __DIR__ . '/lib' . '/autoload.php';
$request = new Http_Request();