Самый простой способ получить доступ к значениям Phalcon Config в представлениях?

StackOverflow https://stackoverflow.com//questions/21013537

  •  21-12-2019
  •  | 
  •  

Вопрос

У меня есть раздел в файлах INI с некоторыми глобально используемыми социальными ссылками, для ex:

[social]
fb = URL
twitter = URL
linkedin = URL
.

Какой самый простой способ получить доступ к этому или есть лучший способ организовать эти глобальные переменные?

Это было полезно?

Решение

Если вы прочитаете свой файл конфигурации при инициализации / загрузке вашего приложения и храните его в контейнере DI, то он будет доступен через это в каждой части вашего приложения.

Пример - bootstrap

$di         = new \Phalcon\DI\FactoryDefault();
$configFile = ROOT_PATH . '/app/var/config/config.ini';

// Create the new object
$config = new \Phalcon\Config\Adapter\Ini($configFile);

// Store it in the Di container
$di->set('config', $config);
.

Теперь вы можете получить доступ к этому в вашем контроллере, как таковой:

echo $this->config->social->twitter;
.

Просмотров через вольт:

{{ config.social.twitter }}
.

Вы всегда можете установить эту конкретную часть вашего конфигурации на ваших представлениях через базовый контроллер.

class ControllerBase() 
{
    public function initialize()
    {
        parent::initialize();

        $this->view->setVar('social', $this->config->social);
    }
}
.

, а затем доступа к этой переменной по вашему мнению:

{{ social.twitter }}
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top