在 laravel 中加载自定义 class 而不自动转储
Loading custom class in laravel without dump autoload
我在 /app/
下有目录 /libraries/
。库应该包含所有自定义文件和 类。我在那里放了新文件,但它不起作用,因为我需要 dump-autoload
.. 问题是我不能这样做。无法访问终端等..
我在composer.json
中有这个
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/libraries", // <<----- this one
"app/tests/TestCase.php"
]
},
从一开始就在库中的另一个文件工作正常。
我的问题是如何加载这个新文件?
你可以试试我最近试过的东西,它对我有用。导航到 vendor/composer/
。既然你说过你在库中有一个 php 文件并且它正在工作,这意味着你将在后续文件中拥有它并且你可以 copy/paste 行并用你的文件进行更改。
首先打开文件autoload_classmap.php
并在数组底部添加
'yourfile' => $baseDir . '/app/libraries/yourfile.php',
第二次打开文件autoload_static.php
并在底部再次添加您的文件
public static $classMap = array (
...
'yourfile' => __DIR__. '/../..' . '/app/libraries/yourfile.php',
保存两个文件并重新加载。在我的例子中,这加载了文件而不需要自动转储。
我在 /app/
下有目录 /libraries/
。库应该包含所有自定义文件和 类。我在那里放了新文件,但它不起作用,因为我需要 dump-autoload
.. 问题是我不能这样做。无法访问终端等..
我在composer.json
"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/libraries", // <<----- this one
"app/tests/TestCase.php"
]
},
从一开始就在库中的另一个文件工作正常。
我的问题是如何加载这个新文件?
你可以试试我最近试过的东西,它对我有用。导航到 vendor/composer/
。既然你说过你在库中有一个 php 文件并且它正在工作,这意味着你将在后续文件中拥有它并且你可以 copy/paste 行并用你的文件进行更改。
首先打开文件autoload_classmap.php
并在数组底部添加
'yourfile' => $baseDir . '/app/libraries/yourfile.php',
第二次打开文件autoload_static.php
并在底部再次添加您的文件
public static $classMap = array (
...
'yourfile' => __DIR__. '/../..' . '/app/libraries/yourfile.php',
保存两个文件并重新加载。在我的例子中,这加载了文件而不需要自动转储。