看看php artisan,你应该有一个php artisan app:name NewNamespace
命令更改命名空间。确保您使用的是最新的 laravel 版本。
旧答案
罢工>
要更改应用的命名空间,您必须编辑 composer.json 文件:
"autoload": {
"psr-4": {
"CustomNamespace\\": "app/"
},
"classmap": [
"database/seeds",
"database/factories"
]
},
但您还必须编辑app 子文件夹和各种配置文件(例如config/app.php、config/auth.php 等)中的每个文件。
完成所有这些后,您可以运行:composer dump-autoload
请记住,这是一种容易出错的方法,因为如果您忘记替换任何文件中的命名空间,任何东西都可能按预期停止工作。
另一种选择是使用您想要的名称创建一个自定义包并将其注册到自定义命名空间。例如:
- 在laravel安装根目录下创建
lib/yourpackage/src文件夹
- 编辑
composer.json 文件以加载您的自定义代码:
"autoload": {
"psr-4": {
"App\\": "app/",
"CustomNamespace\\": "lib/yourpackage/src/",
},
"classmap": [
"database/seeds",
"database/factories"
]
},
- 像以前一样运行
composer dump-autoload
- 您现在可以通过引用您选择的自定义命名空间在项目中的任何位置使用您的文件。