Laravel Encryptable 项目教程
1. 项目的目录结构及介绍
laravel-encryptable/
├── config/
│ └── encryptable.php
├── src/
│ ├── Contracts/
│ │ └── Encryptable.php
│ ├── Traits/
│ │ └── Encryptable.php
│ └── EncryptableServiceProvider.php
├── tests/
│ └── EncryptableTest.php
├── .editorconfig
├── .gitattributes
├── .gitignore
├── CHANGELOG.md
├── composer.json
├── LICENSE.md
├── phpunit.xml.dist
├── psalm.xml.dist
└── README.md
- config/: 包含项目的配置文件
encryptable.php
。 - src/: 包含项目的主要源代码。
- Contracts/: 包含接口定义文件
Encryptable.php
。 - Traits/: 包含特性文件
Encryptable.php
。 - EncryptableServiceProvider.php: 服务提供者文件。
- Contracts/: 包含接口定义文件
- tests/: 包含测试文件
EncryptableTest.php
。 - .editorconfig: 编辑器配置文件。
- .gitattributes: Git 属性配置文件。
- .gitignore: Git 忽略配置文件。
- CHANGELOG.md: 变更日志文件。
- composer.json: Composer 依赖管理文件。
- LICENSE.md: 许可证文件。
- phpunit.xml.dist: PHPUnit 配置文件。
- psalm.xml.dist: Psalm 静态分析配置文件。
- README.md: 项目说明文件。
2. 项目的启动文件介绍
项目的启动文件主要是 EncryptableServiceProvider.php
,它位于 src/
目录下。这个文件负责注册服务提供者,并发布配置文件。
namespace Maize\Encryptable;
use Illuminate\Support\ServiceProvider;
class EncryptableServiceProvider extends ServiceProvider
{
public function boot()
{
$this->publishes([
__DIR__.'/../config/encryptable.php' => config_path('encryptable.php'),
], 'config');
}
public function register()
{
$this->mergeConfigFrom(
__DIR__.'/../config/encryptable.php', 'encryptable'
);
}
}
3. 项目的配置文件介绍
配置文件 encryptable.php
位于 config/
目录下。这个文件定义了哪些字段需要加密。
return [
'encryptable' => [
'first_name',
'last_name',
],
];
在这个配置文件中,你可以指定模型中需要加密的字段。例如,first_name
和 last_name
字段将被自动加密和解密。
以上是 Laravel Encryptable 项目的教程,包含了项目的目录结构、启动文件和配置文件的介绍。希望对你有所帮助!