【问题标题】:Parsing INI file with PHP when amperstand (&) in value当符号 (&) 为值时,使用 PHP 解析 INI 文件
【发布时间】:2025-12-02 21:55:01
【问题描述】:

我想解析一个ini文件。它有字母数字值以及一些特殊字符,如 (-@) 等。但它没有正确解析。我收到错误消息 {E_WARNING: [/home/php/init/config.php:29] 语法错误,第 7 行的 .conf.ini 中出现意外的“&”}。 这是我的ini文件:

[Main]
DATABASE = test;
USER = root;
PASS = null;
HOST = localhost;
......
Def_Title = Welcome to Oggy & Chocroach.; //line 7
....
"Special & Featured" = "Alry Bee"; //line 17

我想在我的填充中保留 [&] 运算符。任何帮助都将不胜感激。

【问题讨论】:

  • 你是如何尝试解析它的?

标签: php ini


【解决方案1】:

来自documentation

注意
如果 ini 文件中的值包含任何非字母数字字符,则需要将其括在双引号中 (")。

所以该行应该是:

Def_Title = "Welcome to Oggy & Chocroach."

键中不能有&,只有值。

【讨论】:

  • 语法错误,第 17 行的 conf.ini 中出现意外的 '"'
  • 只有值可以包含&,不能包含参数。