背景
对于一般的脚本,我们使用
php xxx.php
命令就可以运行脚本。那么假如A.php文件想使用B.php文件的常量或类,怎么办?这说明,我们不能直接访问其他脚本中的数据,如何解决呢?在PHP提供了引入的方式,使用require或include关键字。
传统加载方式
在脚本上对其进行声明,缺点也很明显,当我们在某一个脚本中需要使用大量的外部依赖时,每次都需要手动引入,非常繁琐。
require
为了防止文件重复加载使用
require_once
include
为了防止文件重复加载使用
include_once
自动加载方式
在PHP5.1版本中,官网提供了spl_autoload_register()函数可以自动加载需要的脚本
目录结构:
namespace声明脚本所在的作用域,use逻辑引用,注意spl函数要在最外层包下的脚本中定义。
model层User类结构:
service层UserService类结构:
最外层包下测试脚本:
运行最外层测试脚本:脚本成功加载