Larvel5全局$ config var - 获取表单db?

时间:2015-04-08 08:45:22

标签: php laravel

我有一个包含大量配置值的配置表, 如何创建一个可在laravel全局使用的静态助手/类?

例如,我有一个输入视图:

<input type="text" value="<?= SettingsHelper::getValue('my-settings-key'); ?>" />

当然,我不想每次都查询它,只需要查询一个获取所有配置值的查询。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

你可以这样做,

class SettingHelper {

    protected $items;

    public function get($key, $default = null)
    {
        if ( empty($this->items))
        {
            $this->loadSettingData();
        }

        if ( array_key_exists($key, $this->items) )
        {
            return $this->items[$key];
        }

        return value($default);
    }

    protected function loadSettingData()
    {
        $this->items = Setting::all()->lists('key', 'value');
    }

}

需要在Container中使用单例绑定此类。