Необходимо проанализировать файл ini для извлечения значений.

У меня есть файл .ini с содержимым …

[template] color1 = 000000 color2 = ff6100 color3 = ff6100 color4 = 000000 

И файл с содержимым, ниже которого вызывается из functions.php, который проходит в 2 значениях:

$ myTheme, который является именем темы / шаблона, цвета которого ищутся и $ spot, который является конкретным номером цвета, который требуется искать (цвета 1-4)

 $myTheme = $_REQUEST['theme']; $spot = $_REQUEST['spot']; $myColor = get_option($myTheme); $path_to_ini = "styles/". $myTheme . "/template.ini"; if ($myColor == "") { if($spot == 1){$myColor = [insert color1 value here];} if($spot == 2){$myColor = [insert color2 value here];} if($spot == 3){$myColor = [insert color3 value here];} if($spot == 4){$myColor = [insert color4 value here];} } echo $myColor; 

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

Вы можете использовать parse_ini_file()

Использовать parse_ini :

 $colors = parse_ini($path_to_ini, true); if(array_key_exists($myTheme, $colors)) { $myColor = $colors[$myTheme]['color' . $spot]; } 

Вам не нужно сравнивать $ spot для каждого цвета – вы можете построить ключ массива, чтобы получить значение.

Для этого есть функция для php: http://php.net/manual/en/function.parse-ini-file.php

Вы можете использовать его так:

 <?php $ini_array = parse_ini_file($path_to_ini); ?> 

Значения можно найти следующим образом:

 <?php $color1 = $ini_array['template']['color1']; ?>