10

我在 ini 文件中有一个部分,其中包含一些全球使用的社交链接,例如:

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

访问这些最简单的方法是什么,或者有没有更好的方法来组织这些全局变量?

4

1 回答 1

26

如果您在初始化/引导您的应用程序时读取您的配置文件并将其存储在 DI 容器中,那么它可以在您的应用程序的每个部分中通过它进行访问。

示例 - 引导程序

$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 }}
于 2014-01-09T16:21:20.947 回答