php的 composer的自动加载
注意:必须引入require ‘…/vendor/autoload.php’;才能实现自动查找
"classmap"加载
"autoload": {
"classmap": ["src/", "PACK/" ]
},
会自动查找根目录下src/", "PACK/"文件夹下的类,可以实现递归查找,更新composer.json后需要使用composer dump-autoload 更新查找规则
psr-4查找
该目录下级所有类名、命名空间、目录名都是按照psr-4规则命名的。这里的配置就是为了倡导使用psr-4规范的项目架构,
表展示了符合规范完整类名、命名空间前缀和文件基目录所对应的文件路径。
完整类名 | 命名空间前缀 | 文件基目录 | 文件路径 |
---|
\Acme\Log\Writer\File_Writer | Acme\Log\Writer | ./acme-log-writer/lib/ | ./acme-log-writer/lib/File_Writer.php | \Aura\Web\Response\Status | Aura\Web | /path/to/aura-web/src/ | /path/to/aura-web/src/Response/Status.php | \Symfony\Core\Request | Symfony\Core | ./vendor/Symfony/Core/ | ./vendor/Symfony/Core/Request.php | \Zend\Acl | Zend | /usr/includes/Zend/ | /usr/includes/Zend/Acl.php |
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1uGQb3fn-1644125072950)(/Users/liang/Library/Application Support/typora-user-images/image-20220206132228902.png)]
Pack1.php
<?php
namespace PACK\web\ddd;
class Pack1{
public static function say(){
echo "你好我是包1";
}
}
Pack1::say();
PACK2.php
<?php
require '../vendor/autoload.php';
use Paa\dd\student;
student::say();
files方式:
有时候我们需要直接加载某个php文件,这段代码可能写着全局使用的函数,一般来说我们叫助手函数。这样的文件我们配置在files属性里就可以实现自动加载。
|