Laravel 包骨架项目教程
1. 项目的目录结构及介绍
目录结构
package-skeleton-laravel/
├── src/
│ ├── Config/
│ ├── Contracts/
│ ├── Support/
│ └── YourPackageServiceProvider.php
├── tests/
│ ├── Feature/
│ └── Unit/
├── config/
│ └── your-package.php
├── resources/
│ └── views/
├── database/
│ └── migrations/
├── composer.json
├── README.md
└── .github/
└── workflows/
目录介绍
- src/: 包含所有主要的源代码文件,包括服务提供者、配置、契约和辅助类。
- tests/: 包含单元测试和功能测试。
- config/: 包含包的配置文件。
- resources/: 包含视图文件和其他资源。
- database/: 包含数据库迁移文件。
- composer.json: 定义包的依赖和其他元数据。
- README.md: 项目说明文档。
- .github/workflows/: 包含GitHub Actions的工作流配置文件。
2. 项目的启动文件介绍
服务提供者
服务提供者是Laravel包的核心启动文件。在src/
目录下,通常会有一个YourPackageServiceProvider.php
文件。
namespace YourPackage;
use Illuminate\Support\ServiceProvider;
class YourPackageServiceProvider extends ServiceProvider
{
public function boot()
{
$this->loadMigrationsFrom(__DIR__.'/../database/migrations');
$this->loadViewsFrom(__DIR__.'/../resources/views', 'your-package');
$this->publishes([
__DIR__.'/../config/your-package.php' => config_path('your-package.php'),
]);
}
public function register()
{
$this->mergeConfigFrom(__DIR__.'/../config/your-package.php', 'your-package');
}
}
功能介绍
- boot(): 加载迁移文件、视图文件,并发布配置文件。
- register(): 合并配置文件。
3. 项目的配置文件介绍
配置文件位置
配置文件通常位于config/
目录下,文件名为your-package.php
。
配置文件内容
return [
'option1' => 'value1',
'option2' => 'value2',
// 其他配置选项
];
使用配置
在代码中使用配置文件中的值:
$value1 = config('your-package.option1');
通过以上步骤,您可以了解并使用spatie/package-skeleton-laravel
项目的基本结构和配置。希望这篇教程对您有所帮助!