确切地说,在使用Laravel 4进行项目工作时,我决定要制作自己的帮助程序文件来容纳我的自定义函数。.其中之一是下面的...

function pr($ar=array(), $bool=false){

   echo '<pre>';
   print_r($ar);
   echo '</pre>';

   if($bool){
      exit;
   }

}

在我的composer.json文件中,紧接在autoload:classmap之后,我添加了myne autoload:files -arrar并包括了我的自定义文件app/helpers,如下所示。
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php"
        ],

        "others":[
            "app/helpers.php"
        ]

我切换到终端窗口并运行以下命令
composer dump-autoload -o

但是我仍然收到我的pr()函数未定义的错误。。。然后我尝试了工匠的替代方法。[-o]优化文件
php artisan dump-autoload

但仍然拒绝工作...然后我从更改了数组名称
"others":[
            "app/helpers.php"
        ]


"files":[
            "app/helpers.php"
        ]

然后我得到了想要的响应,我的代码现在可以看到我编写的自定义函数,请我想知道是否存在我应该遵循的模式,否则我就将“files”误认为是“其他人”,但我遇到了错误,但以防万一,我在这里错过了什么,我所看到的只是数组表示形式的名称字符串值...。

最佳答案

这就是 Composer 的工作方式。在autoload部分中,当您要加载某些文件时,需要使用files。在我的Laravel 5项目中,例如:

"autoload": {
    "classmap": [
        "database",
        "tests/TestCase.php"
    ],
    "psr-4": {
        "App\\": "app/",
        "verify\\": "verify/"
    },
    "files": [
        "app/Helpers/functions.php"
    ]
},

如果查看documentation,您将看到需要使用files通过自动加载器加载任何额外的文件。

关于php - Composer dump-autoload,发行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32664271/

10-11 03:34