为了账号安全,请及时绑定邮箱和手机立即绑定

如何设计一个php自动加载类

如何设计一个php自动加载类

郎朗坤 2019-04-09 20:25:16
┡┈▓libralies┊┡┈▓database┊┊┡┈▓driver┊┊┊┡┈▒mysql.php┊┊┊┡┈▒mysqli.php┊┊┊┗┈▒sqlite.php┊┊┡┈▓query┊┊┊┡┈▒mysql.php┊┊┊┡┈▒mysqli.php┊┊┊┗┈▒sqlite.php┊┊┡┈▒driver.php┊┊┗┈▒query.php┊┟┈▓session┊┊┟┈▓storage┊┊┊┟┈▒database.php┊┊┊┟┈▒mamcache.php┊┊┊┗┈▒none.php┊┊┗┈▒storage.php┊┡┈▒database.php┊┡┈▒session.php这样的文件结构,怎样设计一个自动加载类,在实例化类的时候按需加载相的应类
查看完整描述

2 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

方法1(简单粗暴)
把你想能自动加载的类的目录添加到自动加载目录中
参考这里
set_include_path('libralies/database/driver'.PATH_SEPARATOR.get_include_path());
...
方法2(推荐)
根据目录或者命名空间自动加载
参考这里
function__autoload(){
$dir='./libralies';
set_include_path(get_include_path().PATH_SEPARATOR.$dir);
$class=str_replace('\\','/',$class).'.php';
require_once($class);
}
这种方法需要你在创建类的时候通过命名空间方式
如:
$a=newLibralies\Databases\Driver\Mysql;
__autoload函数会把它转化成相对路径然后导入
                            
查看完整回答
反对 回复 2019-04-09
  • 2 回答
  • 0 关注
  • 321 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号