在php中只加载ini文件的一部分

时间:2013-06-26 20:16:07

标签: php class load ini

我有这个代码加载文件.ini:

class Page{

    public $lang;

    function __construct($lang){
        $this->lang = $lang;
        $this->page = basename($_SERVER['PHP_SELF'], ".php");
    }

    public function writeContent($part){
        $load_page = parse_ini_file('lang/'.$this->lang.'.content.ini', true);
        return $load_page[$this->page][$part];
    }

}

这会加载像“it.content.ini”或“en.content.ini”这样的文件...... ini文件的结构如下:

[page-name-one]
title = "THE TITLE"

caption1 = "Text one"
caption2 = "Text two"

[page-name-two]
title = "THE TITLE OF THE SECOND PAGE"

caption1 = "Text one second page"
caption2 = "Text two second page"

这非常有效,因为它加载文件并根据页面名称显示部分(方括号之间)。

是否可以在不使用多个文件的情况下仅加载一部分ini文件?

当我加载index.php时,我希望PHP实际上只为ini文件的[index]部分加载ini文件,这样如果文件实际上很大,我只加载它的一部分。有可能吗?

2 个答案:

答案 0 :(得分:0)

看一下Zend Framework的Zend_Config_Ini部分。您可以使用它轻松加载部分配置文件。

$config = new Zend_Config_Ini('/path/to/config.ini', 'section_name');

答案 1 :(得分:0)

请参阅parse_ini_file功能