【发布时间】:2017-08-21 09:41:17
【问题描述】:
我在app/Helpers 目录中有一个helper.php 文件。我将该文件包含在composer.json:
...
"files": [
"app/Helpers/helpers.php"
]
...
Helper 工作正常,但我不能在那里使用public_path() 方法。我需要包含另一个文件(请不要问我为什么,因为它是我不需要重写的旧代码)。所以我有以下内容:
require_once public_path() . '/appadmin/bootstrap.php';
我知道默认情况下 Laravel 会在 /public/ 文件夹中查找,但我遇到了一个问题。如果我需要执行composer update 我必须在helper.php 中使用public/appadmin/bootstrap.php 路径,但是在执行之后我必须将该路径更改为/appadmin/bootstrap.php 才能正确工作。这就是为什么我决定使用public_path() 方法来接收这两种情况的正确路径。如果我使用它,我会收到一个错误:
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postUpdate
Script Illuminate\Foundation\ComposerScripts::postUpdate handling
the post-update-cmd event terminated with an exception
[ReflectionException]
Class path.public does not exist
提前致谢!
【问题讨论】:
标签: laravel laravel-5 laravel-facade