gpt4 book ai didi

php - 使用 Composer 自动加载器进行自定义代码管理?

转载 作者:IT王子 更新时间:2023-10-28 23:51:35 25 4
gpt4 key购买 nike

我开始了一个新项目,我在其中使用 Composer处理一些依赖关系,以及它们的自动加载。

我只将 composer.json 文件保存在 VCS 中,而不是整个供应商目录,所以我不想开始在其中添加我的代码。

我应该如何处理我自己的项目特定代码,以便它也自动加载?

最佳答案

这个其实很简单。从您的存储库中排除供应商目录是正确的方法。您的代码应存储在单独的位置(如 src)。

使用 autoload使 Composer 识别您的命名空间的属性:

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

假设您的类名符合 psr-4 标准,它应该可以工作。下面是类名及其在文件系统中的位置的一些示例:

  • Acme\Command\HelloCommand -> src/Command/HelloCommand.php
  • Acme\Form\Type\EmployeeType -> src/Form/Type/EmployeeType.php

记得为每个类定义一个命名空间。这是 Acme\Command\HelloCommand 的示例:

<?php

namespace Acme\Command;

class HelloCommand
{
}

不要忘记在您的 PHP Controller 中包含自动加载器:

<?php

require 'vendor/autoload.php';

阅读更多关于 PSR-4 standard on PHP Framework Interoperability Group 的信息.

请注意,如果您编辑 composer.json,则需要运行安装、更新或 dump-autoload刷新自动加载器类路径。

关于php - 使用 Composer 自动加载器进行自定义代码管理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12247431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com