更改默认的 app 目录
有些用例可能需要将 app 目录重命名为其他目录。在 Laravel4 中你可以只改变一个配置条目,这是在 Laravel5 中实现它的一种方法。
在这个例子中,我们将 app
目录重命名为 src
。
覆盖 Application 类
目录名称 app
被硬编码到核心 Application 类中,因此必须重写它。创建一个新文件 Application.php
。我更喜欢将我的目录保留在 src
目录中(我们将替换应用程序),但你可以将其放在其他位置。
以下是重写类的外观。如果你想要一个不同的名称,只需将字符串 src
更改为其他名称即可。
namespace App;
class Application extends \Illuminate\Foundation\Application
{
/**
* @inheritdoc
*/
public function path($path = '')
{
return $this->basePath . DIRECTORY_SEPARATOR . 'src' . ($path ? DIRECTORY_SEPARATOR . $path : $path);
}
}
保存文件。我们完成了它。
调用新类
打开 bootstrap/app.php
并找到
$app = new Illuminate\Foundation\Application(
realpath(__DIR__.'/../')
);
我们将用这个替换它
$app = new App\Application(
realpath(__DIR__.'/../')
);
作曲家
打开 composer.json
文件并更改自动加载以匹配你的新位置
"psr-4": {
"App\\": "src/"
}
最后,在命令行运行 composer dump-autoload
,你的应用程序应该从 src
目录提供。