我试图折叠一个我正在用PHP读取的文件,并生成一个可以在我的应用程序的其他地方使用的配置文件。 PHP脚本我从一个系统中提取这个文件,我可以使用set
命令在bash提示符下进行配置。解析PHP中的自定义配置文件
例如,命令
set system ntp server 0.pool.ntp.org
set system ntp server 1.pool.ntp.org
set system ntp server 2.pool.ntp.org
会产生这种结构在系统的配置文件:
system { ntp { server 0.pool.ntp.org { } server 1.pool.ntp.org { } server 2.pool.ntp.org { } } }
..我想让我的PHP脚本读取这个文件并生成t他以下的输出:
system ntp server 0.pool.ntp.org
system ntp server 1.pool.ntp.org
system ntp server 2.pool.ntp.org
我不知道我会怎样处理这,和我甚至有写psudo代码问题,明白我怎么可以折叠这些节点和生成我所需的线路。是什么使得它很难对我来说是一个事实,即配置节点的深度可以改变,例如:
system login user root authentication encrypted-password <password>
..产生结构..
system { login { user root { authentication { encrypted-password <password> } } } }
..并与上面的NTP命令合并,整个配置文件看起来像:
system { login { user root { authentication { encrypted-password <password> } } } ntp { server 0.pool.ntp.org { } server 1.pool.ntp.org { } server 2.pool.ntp.org { } } }
有人可以提出任何方法吗?
你有选择切换到更标准的格式吗? 您当前的格式与JSON相当接近,并且如果您有权访问创建配置的脚本,您将拥有许多简单的选项。 – ornous 2014-09-19 12:45:33
系统如何知道'user root'是一个关键字,而不是'{user {root ...'中的两个分隔符?是否有允许的密钥列表? – georg 2014-09-19 12:59:55