【发布时间】:2013-03-03 16:23:15
【问题描述】:
我正在为一个网站设置一个配置文件,它将使用parse_ini_file 方法读取。选项之一是某些操作之前的秒数。我尝试将值设置为 60*60*24*3 以获得三天的秒数:
[mailer]
; Number of seconds before trial expiration an email should be sent
seconds = 60*60*24*3;
但该变量只是作为字符串“60*60*24*3”读入 php。出于安全原因,我不想使用eval。有没有什么方法可以让 (a) 更容易使用和 (b) 比简单地列出到给定日期的秒数更直观?
【问题讨论】:
-
您打算如何了解所有可能需要处理的由INI 启动的设置? INI 文件通常是一组有限的键和值集。所以感觉应该预先计算值(您已经在设置上方的评论中指出)。话虽如此,有bcMathParser。
-
@JaredFarrish - 我知道,因为我是写它的人。我会指定哪些条目可以“处理”,哪些不可以。
-
对于如此容易手动完成的事情,似乎可能有很多麻烦和“脆弱”(对我来说)。当然是我的意见。
-
@JaredFarrish - 没问题,如果这是一个坏主意,我可以避免它。只是试图使文件更易于阅读(
60*60*24*3比259200更直观)。 -
确实如此。您可以允许
strtotime()语句,例如:ignite.io/code/5133811cec221e283b000000