如何在我的项目的供应商中使用psr-4创建自动加载文件?

问题描述 投票:0回答:1

我正在创建一个PHP项目,并希望实现PSRR-4自动加载。

我不知道我需要在供应商目录中创建哪些文件来实现类文件的自动加载。

php composer-php autoload autoloader psr-4
1个回答
0
投票

如果使用composer,则不会创建自动装带器,但让composer来完成并为您创建它。

您唯一需要做的就是在composer.json上创建适当的配置并执行composer dump-autoload

例如:

{
    "autoload": {
        "psr-4": {"App\\": "src/"}
    }
}

通过上述操作,如果您具有这样的文件结构

├── src/
│   ├── Controller/
│   ├── Model/
│   ├── View
│   └── Kernel
├── public/
│   └── index.php
└── vendor/

执行composer dump-autoload后,将在vendor/autoload.php上生成自动装载器。

您的所有类都应嵌套在App名称空间内。

例如:

<?php /* src/Controller/Home.php */

namespace App\Controller;

class Home { /* implementation */ }

并且您只需要在入口点脚本(例如index.php)中包括自动装带器。

<?php

require '../vendor/autoload.php';

这将允许您在此之后直接从任何地方直接加载类,就像这样:

use App\Controller\Home;

$homeController = new Home();

这在文档here中有解释。

© www.soinside.com 2019 - 2024. All rights reserved.