更改預設的 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
目錄提供。