如何转义 .ini 文件中的换行符,以便 Zend_Config_Ini 按字面意思读取它?
我正在尝试使用 PHP/Zend Framework 将多行电子邮件存储在 ini 文件中。我的字符串中有新行字符,当我使用 Zend_Config_Ini 解析 ini 文件时,新行字符会转义回来,因此它们会打印在屏幕上,而不是换行符。
示例:
// ini file
message = Hi {0},\n\nThis is a test message.\nGoodbye!
由 Zend_Config_Ini 解析为:
Hi {0},\\n\\nThis is a test message.\\nGoodbye!
然后在电子邮件中打印为:
Hi John,\n\nThis is a test message.\nGoodbye!
相反,我希望电子邮件看起来像这个:
嗨,约翰,
这是一条测试消息。
再见!
有人知道如何实现这一目标吗?谢谢!
I am trying to store a multiple line e-mail in an ini file using PHP/Zend Framework. My string has new lines characters in it, and when I use Zend_Config_Ini to parse the ini file, the new line characters come back escaped, so they are printed out on screen, instead of a line feed.
Example:
// ini file
message = Hi {0},\n\nThis is a test message.\nGoodbye!
is parsed by Zend_Config_Ini as:
Hi {0},\\n\\nThis is a test message.\\nGoodbye!
which then is printed out in the email as:
Hi John,\n\nThis is a test message.\nGoodbye!
Instead I want the e-mail to look like this:
Hi John,
This is a test message.
Goodbye!
Does anybody know how to achieve this? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如何使用双引号将您的值括起来,并使用真正的换行符,如下所示:
例如,使用这部分代码:
当
application.ini
包含此内容时:我从
var_dump
获得以下输出:What about using double-quotes arround your values, and using real newlines, like this :
As an example, using this portion of code :
With
application.ini
containing this :I get the following output from my
var_dump
:使用 php 常量:PHP_EOL
请注意,application.ini 中的常量 PHP_EOL 必须出现在引号之外。否则它将被解释为文字。
Use php constant: PHP_EOL
Note that the constant PHP_EOL in application.ini must appear outside of the quotation marks. Otherwise it'll be interpreted as a literal.