Как получить значение из env в Symfony?

Пользователь

от guillermo , в категории: PHP , 5 месяцев назад

Как получить значение из env в Symfony?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от johnpaul.blick , 5 месяцев назад

@guillermo Допустим у Вас в .env установлена переменная TEST_PARAM в Symfony:

1
TEST_PARAM=test


Вы можете установить значение параметра в config/services.yaml


1
2
parameters:
    app.test_param: '%env(TEST_PARAM)%'


И теперь в контроллере Вы можете легко получить значение через:


1
$this->getParameter('app.test_param');


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

1
2
3
locales:
    class: AppBundle\Util\Locales
    arguments: ["%app.test_param%"]


И потом в конструкторе Locales.php можно получить это значение:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
<?php

namespace AppBundle\Util;

class Locales
{
    /**
     * @var string
     */
    private $testParam;

    public function __construct($testParam)
    {
        $this->testParam = $testParam;       
    }

    // ...
}