dima-bzz/laravel-config-writer

Laravel 提供商,用于重写配置

0.3.1 2021-12-27 09:03 UTC

This package is auto-updated.

Last update: 2024-09-27 15:28:32 UTC


README

Latest Stable Version Tests GitHub Code Style Action Status Total Downloads

写入 Laravel 配置文件并保持文件完整性。

此库增加了写入配置文件的能力。

您可以在返回单个数组定义的基本配置文件(如 Laravel 配置文件)中重写数组值,同时保持文件完整性,保留注释和高级设置。

支持以下值类型进行写入:字符串、整数、布尔值和数组。

支持

此提供商设计用于从 7.4 和 8.0 版本的 Laravel 中使用。

设置

通过 composer 安装

composer require "dima-bzz/laravel-config-writer"

.env 文件中设置要使用的默认文件名

...
CONFIG_WRITER=config
...

您可以选择通过以下方式发布配置文件

php artisan vendor:publish --tag="config-writer"

配置完所有内容后,您应该运行命令 artisan config:clearartisan config:cache

介绍

默认为严格写入模式。如果您愿意,可以在配置文件中更改它

...
strict => false
...

或通过 Facade

use DimaBzz\LaravelConfigWriter\Facades\ConfigWriter
...
ConfigWriter::of([
    'item' => 'new value',
    'nested.config.item' => 'value',
    'arrayItem' => ['Single', 'Level', 'Array', 'Values'],
    'numberItem' => 3,
    'booleanItem' => true
])
->strictMode(false)
->write();
...

使用助手

这是将新数据写入配置文件的最简单方法

config_writer([
    'item' => 'new value',
    'nested.config.item' => 'value',
    'arrayItem' => ['Single', 'Level', 'Array', 'Values'],
    'numberItem' => 3,
    'booleanItem' => true
]);

设置另一个可选的配置文件

config_writer('config-writer', [
    'item' => 'new value',
    'nested.config.item' => 'value',
    'arrayItem' => ['Single', 'Level', 'Array', 'Values'],
    'numberItem' => 3,
    'booleanItem' => true
]);

使用 Facade

您可以像这样将新数据写入配置文件

...
ConfigWriter::write([
    'item' => 'new value',
    'nested.config.item' => 'value',
    'arrayItem' => ['Single', 'Level', 'Array', 'Values'],
    'numberItem' => 3,
    'booleanItem' => true
]);
...

此外,您还可以设置某些参数

...
ConfigWriter::of([
    'item' => 'new value',
    'nested.config.item' => 'value',
    'arrayItem' => ['Single', 'Level', 'Array', 'Values'],
    'numberItem' => 3,
    'booleanItem' => true
])
->config('config-writer')
->strictMode(false)
->write();
...

事件

DimaBzz\LaravelConfigWriter\Events\WriteSuccess

如果将数据写入配置文件成功,将触发此事件。它有以下公共属性

  • name:配置文件名称

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

安全

如果您发现任何安全问题,请通过电子邮件 dimabzz@gmail.com 反馈,而不是使用问题跟踪器。

许可证

MIT 许可证(MIT)。有关更多信息,请参阅许可证文件