PHP:获取具有给定结构的 config.cfg 形式的变量

PHP: Getting variables form config.cfg with given structure

这对专业人士来说可能是个愚蠢的问题,但即使在谷歌搜索数小时后我也找不到解决方案:

我有一个具有以下结构的共享 config.cfg(因此我无法对该结构做任何事情):

[config]
fileExtensions="JPEG|JPG|jpg|jpeg|png|gif"
contentFolder="Gallery"

[images]
maxSize=1900
jpegQuality=85

[thumbnails]
jpegQuality=80
blurredImageQuality=3

我设法将 config.cfg 放入我的 php 脚本中并可以调用一些变量,例如 'maxSize'。现在来了但是:

我当前的解决方案只是将 config.cfg 作为一个简单数组加载:

Array ( [fileExtensions] => JPEG|JPG|jpg|jpeg|png|gif [contentFolder] => Gallery [sortOrder] => asc [titleDescSeparator] => $$ [albumCoverDetector] => @@@@@ [ignoreDetector] => _hidden [maxSize] => 1900 [jpegQuality] => 80 [blurredImageQuality] => 3 [allowedSizeValues] => 50|100|225|150|200|300|auto [allowOrigins] => * )

但是要获得一个在 config.cfg 中出现两次的变量,我需要加载包含结构(带有数组和子数组)的配置文件。任何人都知道如何做到这一点?这是我当前的代码:

<?php
$config_values = parse_ini_file('./nano_photos_provider2.cfg');
print_r($config_values); //call whole array
echo $config_values[maxSize]; //call single variable
?>

非常感谢任何帮助!

在您应该首先阅读manual中,有第二个参数是:

By setting the process_sections parameter to TRUE, you get a multidimensional array, with the section names and settings included.

所以,您只需要:

$config_values = parse_ini_file('./nano_photos_provider2.cfg', true);
print_r($config_values); //call whole array
echo $config_values['images']['maxSize']; //call single variable