自动生成优化的自动加载器

21 *_*ury 2 php autoload composer-php psr-4

我正在使用 PHP 进行一个简单的项目,并且正在使用 PSR-4 自动加载。我只是不知道是否有运行方式composer dump-autoload -ocomposer install,让新用户无需键入composer dump-autoload -o以避免自动加载错误

{
    "name": "project/vendor",
    "license": "MIT",
    "authors": [
        {
            "name": "my name",
            "email": "myemail@gmail.com"
        }
    ],
    "require": {
        "phpunit/phpunit": "^7.5"
    },
    "autoload": {
          "psr-4": {
              "src\\": "src/"
           }
     },
     "scripts": {
        "run-test": ["./vendor/bin/phpunit tests/calculatorTests.php"]
    }
}
Run Code Online (Sandbox Code Playgroud)

rob*_*006 6

您可以optimize-autoloadercomposer.json config以下选项中使用:

"config": {
    "optimize-autoloader": true
},
Run Code Online (Sandbox Code Playgroud)

然而,这在开发阶段可能会很烦人(当生成优化的自动加载器只是浪费时间和问题的根源),所以我宁愿为此创建一些快捷脚本并鼓励用户使用它而不是直接composer dump-autoloadcomposer install. 以这个答案为例。然后你就可以使用

composer install --no-dev -o 
Run Code Online (Sandbox Code Playgroud)

在你的脚本中。