include 和 use 区别
Include 为new类时 需要引用 类似赋值到当前页面 的代码
Use 为 导入类的命名空间 方便 new的适合更简短输入类名
new 未include的类时 启动 spl_autoload_register 将类名作为参数 传入 进行include
spl_autoload_register(function ($class) { // class = osLinux
/* 限定类名路径映射 */
$class_map = array(
// 限定类名 => 文件路径
"os\Linux" => "./Linux.php", 使用一个数组去保存类名与文件路径的关系,当类名传入时,就知道该引入哪个文件去加载这个类
);
/* 根据类名确定文件名 */
$file = $class_map[$class];
/* 引入相关文件 */
if (file_exists($file)) {
include $file;
}
});
new osLinux();
但是一旦文件多起来的话,映射数组会变得很长,这样的话维护起来会相当麻烦。如果命名能遵守统一的约定,就可以让自动加载器自动解析判断类文件所在的路径。
PSR-4 是关于由文件路径自动载入对应类的相关规范,规范规定了一个完全限定类名需要具有以下结构:
<顶级命名空间>(<子命名空间>)*<类名>
参考http://www.cnblogs.com/woider/
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: tp5查询
- 下一篇:没有了