spl_autoload_register()自动加载+命名空间的使用
2017-11-03 20:03
821 查看
我们首先在AutoLoading文件夹下创建了一个loading类,举例来看:AutoLoading\loading:
<?php namespace AutoLoading; class loading { public static function autoload($className) { //把 \ 转换成(目录风格符)DIRECTORY_SEPARATOR //便于兼容在Linux系统下文件找,在Windows系统下(/ \ 是通用的); //由于namespace 很规格,所以很快就能直接找到 $fileName = str_replace('\\',DIRECTORY_SEPARATOR, DIR .'\\'.$className).'.php';//替换符号 echo $fileName; if (is_file($fileName)){//判断文件是否存在 include ($fileName); } else { echo $fileName.'is not exist'; } } }
上面就是自动加载的引入类文件的方法,下面使用spl_autoload_register()这个函数来注册:
index.php
//把当前目录定义为绝对路径 define('DIR',dirname(__FILE__)); //加载类文件 require DIR . '/loading.class.php'; //必须是static方法调用,不能使用use spl_autoload_register("\\AutoLoading\\loading::autoload"); Lib\Db::demo();//引入Lib目录下的Db类这样便可以很轻松的将不同文件夹的的类引如进来。
相关文章推荐
- PHP 命名空间与自动加载机制介绍,spl_autoload_register, __autoload 函数
- php命名空间+spl_autoload_register实现类的自动加载
- 使用spl_autoload_register实现自动加载
- PHP自动加载类—__autoload()和spl_autoload_register() (补充)
- spl_autoload_register 注册自己的自动加载函数(__autoload())
- PHP自动加载机制[2]---spl_autoload_register操作详解
- __autoload,spl_autoload_register与自动加载
- spl_autoload_register 让类在需要的时候自动加载
- PHP spl_autoload_register实现自动加载研究
- PHP自动加载 spl_autoload_register
- PHP 使用命名空间(namespace),实现自动加载
- PHP自动加载autoload和命名空间的应用小结
- php面向对象(OOP)—spl_autoload_register()注册自定义的自动加载函数
- php spl_autoload_register类库自动加载,省去引入类文件
- 详解spl_autoload_register()函数以及自动加载不同目录的类
- PHP自动加载之spl_autoload_register()
- php自动加载类的实现 spl_autoload_register
- spl_autoload_register自动加载介绍
- 命名空间及自动加载函数的使用
- PHP类的自动加载__autoload && spl_autoload_register