PHP: чтение config.ini в массив с помощью file ()
Вопрос
Мой конфигурационный файл выглядит так:
title = myTitle;
otherTitle = myOtherTitle;
когда я читаю файл с помощью file (), он создает этот массив
[0] => title = myTitle;
[1] => otherTitle = myOtherTitle;
и я хочу, чтобы массив выглядел следующим образом:
[title] => myTitle;
[otherTitle] => myOtherTitle;
Я неправильно к ней подхожу? Должен ли я просто прочитать всю конфигурацию в жало и взорвать его оттуда?
Решение
Вы можете использовать parse_ini_file
функция. Он доступен в PHP 4 и 5.
Если ваш файл конфигурации выглядит следующим образом:
one = 1;
five = 5;
animal = BIRD;
Функция вернет следующий ассоциативный массив:
Array
(
[one] => 1
[five] => 5
[animal] => BIRD
)
Другие советы
Я бы просто перебрал файл и разбил каждую строку по отдельности. Вот простой пример, после которого вы получите $ config
, хранящий все ваши данные в соответствии с запросом.
$config = array();
$lines = file("config.ini");
foreach ($lines as $line) {
$vals = explode('=', $line, 2);
$config[trim($vals[0])] = trim($vals[1]);
}
Не связан с StackOverflow