首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ComposerAutoloaderInit之后的随机字符串在autoload.php中的作用是什么?

ComposerAutoloaderInit之后的随机字符串在autoload.php中的作用是什么?
EN

Stack Overflow用户
提问于 2019-08-18 00:25:11
回答 1查看 250关注 0票数 0

在编写使用composer的包时,我不需要帮助。我只是想了解composer-php的代码。

我的重点是类名中的随机字符串,如ComposerAutoloaderInit6747b392e558bd54c2f1031b944d5730 in autoload.php

通过这个随机字符串实现了什么?我怀疑目标是确保类名是唯一的,但是为什么呢?用一个独特的类名解决了哪些问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-18 09:26:03

在PHP中,不能有两个具有相同FQN (完全限定名)的不同类。但你可以有多台自动发现器。拥有唯一的名称可以确保您可以拥有由Composer生成的多个独立的自动加载器,而不存在任何名称冲突的风险。

这种情况并不像你想的那样罕见。通常,在项目中只有一个自动加载程序,但是在没有本地编写器支持的生态系统中(比如WordPress --通常是插件包Composer的自动加载程序作为其代码的一部分)或打包在phar存档中的工具(如phpunit),您可能有两个独立的自动加载器由Composer生成。唯一的名称确保它们可以共存。

顺便说一句:这个后缀可以通过autoloader-suffix设置进行配置。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57540826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档