macropage/laravel-json-settings

将您的Laravel应用程序设置存储在一个或多个JSON文件中。

v0.1.0 2022-02-14 20:53 UTC

This package is auto-updated.

Last update: 2024-08-29 05:56:12 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

这是https://github.com/ryangjchandler/laravel-json-settings的分支。
主要更改是:我为每个文件添加了保存的命名空间。
我还不确定这是否是一个好主意,所以让我们看看吧 ;)

此包提供了一个简单的SettingsRepository类,可以用于将您的应用程序设置存储在单个JSON文件中。

安装

您可以通过composer安装此包

composer require macropage/laravel-json-settings

您可以使用以下命令发布配置文件:

php artisan vendor:publish --tag="json-settings-config"

使用

您可以通过在任何DI支持的函数中类型提示它,例如控制器方法,从容器中解析macropage\LaravelJsonSettings\SettingsRepository的一个实例。

class IndexController
{
    public function __invoke(SettingsRepository $settings)
    {
        return view('index', [
            'title' => $settings->get('index.title'),
        ]);
    }
}

SettingsRepository类包含以下方法:

  • get(string $key, mixed $default = null) - 通过提供键(支持点符号)获取设置的值。
  • set(string $key, mixed $value, bool $save = true) - 设置设置的值并切换自动保存。
  • has(string $key) - 确定设置是否存在。
  • save() - 手动将设置保存回磁盘。
  • reload() - 清除缓存并从磁盘重新加载设置。

如果您更喜欢使用外观,您也可以直接与macropage\LaravelJsonSettings\Facades\Settings外观交互。

测试

composer test

贡献

有关详细信息,请参阅CONTRIBUTING

鸣谢

许可

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