Laravel 更改默认应用目录

示例

在某些情况下,您可能希望将应用程序目录重命名为其他名称。在Laravel4中,您可以更改配置条目,这是在Laravel5中完成配置的一种方法。

在此示例中,我们将app目录重命名为src。

覆盖应用程序类

目录名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目录提供您的应用程序。