我注意到Laravel 4正在使用一些PSR标准。我最近安装了SensioLabs工具php-cs-fixer,当我们想要遵循PHP编码标准时,它会检测并修复大部分问题。
我已在我的裸Laravel 4副本中执行该命令,这是日志。
php-cs-fixer fix app/
! Class User in /home/javier/Code/laravel/app/models/User.php should have at least a vendor namespace according to PSR-0 rules
! Class DatabaseSeeder in /home/javier/Code/laravel/app/database/seeds/DatabaseSeeder.php should have at least a vendor namespace according to PSR-0 rules
! Class HomeController in /home/javier/Code/laravel/app/controllers/HomeController.php should have at least a vendor namespace according to PSR-0 rules
! Class BaseController in /home/javier/Code/laravel/app/controllers/BaseController.php should have at least a vendor namespace according to PSR-0 rules
输出显示与自动加载标准PSR-0相关的一些问题 这是怎么回事?
任何帮助表示感谢。
答案 0 :(得分:5)
在github laravel跟踪器上报告问题之后,我得到了@javiervd的好评。
以下是答案
问题是“app”文件夹中的类不遵循PSR-0,这就是作曲家自动加载器使用类映射而不是PSR-0的原因。
引用@daylerees
现在你可能会问自己,为什么Laravel默认不设置这个?
Laravel不知道你的项目是什么,以及root命名空间是什么。它是一个零配置框架,这意味着它应该“开箱即用”。因此,类映射是最明智的选择。
这很有道理。