Home >Backend Development >PHP Tutorial >php使用了composer之后 还需要自己写autoload方法吗

php使用了composer之后 还需要自己写autoload方法吗

WBOY
WBOYOriginal
2016-06-06 20:09:25881browse

最近看到composer这东西之后在纠结php使用了composer之后 还需要自己写autoload方法吗?还是都用composer载入?其实对composer了解不是很深,求指教。

回复内容:

最近看到composer这东西之后在纠结php使用了composer之后 还需要自己写autoload方法吗?还是都用composer载入?其实对composer了解不是很深,求指教。

不用
自动生成的 vendor 目录下,有 autoload 函数,会根据命名空间加载

composer已经帮你生成了一个loader,就不用自己写加载器了,/vendor/composer目录下会包含autoload_real.php文件主要用来依次按照psr-4/psr-0/classmap/files四个标准来实现命名空间和文件路径的映射,当然目前主要是psr-4标准文件是autoload_psr4.php,psr-0标准要被淘汰了。看/vendor/composer目录下文件源码发现,把加载的路径数据依次放在ClassLoader对象的私有变量里,通过$loader->register(true)其实就是用spl_register_autoload()来做的。

推荐两篇文章:Laravel 执行流程(一)之自动加载,深入 Composer autoload。两篇文章写的挺好,可以研究下。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn