config — Как проверить, существует ли раздел в файле конфигурации INI и добавить его, если он не существует

Я использую parse_ini_file() функция для анализа моего файла конфигурации в PHP. process_sections Параметр установлен в True, потому что мне нужны разделы.

[section 1]
key1 = value1
key2 = value2
...

[section 2]
...

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

Я знаю, что в Python есть логический метод, который позволяет легко проверить это: config.has_section('my section')и создать разделы: config.add_section('my section'),

Мне было интересно, если есть что-то подобное в PHP.

РЕДАКТИРОВАТЬ:

Я нашел простое решение, но очень эффективное. Я использовал array_key_exists('my section', $my_array) функция, которая похожа на функцию Python, которую я упоминал ранее, и делает то, что я хотел. Это простой код, который я реализовал

$config = parse_ini_file('MyConfigFile.cfg', True);

if (!array_key_exists('section 3', $config)) {
foreach ($section_three_array as $key => $value) {
$config['section 3'][$key] = $value;
}
}

Затем, чтобы записать новый раздел (если он не существует) с его ключами и значениями в файл конфигурации, я использовал определенную функцию Вот.

0

Решение

Вы можете проверить, существует ли значение, используя isset() и я рекомендую проверить это также имеет значение с empty(), Если вы покажете часть своего кода, мы можем посоветовать вам его реализовать.

Там нет собственного способа записи обратно в INI-файл, но вот функция, сделанная кем-то другим.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector