我一直在尝试通过 PHP 生成 RRD 图。到目前为止,除了我想要最后更新日期/时间的最后一行之外,它工作正常。我一直在网上搜索,但找不到与我的问题相关的信息。我发现一个用 Bash RRDTool GPRINT 格式编写的脚本与 printf接近,但该解决方案无法应用于我的问题。下面提供了我在 PHP 中生成日期的代码示例:
date_default_timezone_set('Europe/Stockholm');
$timezone = new DateTime(NULL, new DateTimeZone('Europe/Stockholm'));
$date = date('l jS \of F Y h:i:s A' , $timezone->format('U'));
带有回声的输出是:
Monday 5th of May 2014 12:40:14 PM
在我的图表的末尾,我试图将它作为对图表的注释导入,代码示例:
"COMMENT: RRD last updated: ".$date."\\n",
我得到的错误:
<b>Graph error: </b>I don't understand ': Monday 5th of May 2014 12:43:17 PM\n'
in command: 'COMMENT: RRD last updated: Monday 5th of May 2014 12:43:17 PM\n'.
我试图\
在字符上应用(反斜杠):
并且错误按预期在时间转移:
<b>Graph error: </b>I don't understand ':45:31 PM\n' in command: 'COMMENT: RRD
last updated\: Monday 5th of May 2014 12:45:31 PM\n'.
我尝试在日期语法上应用相同的解决方案:
$date = date('l jS \of F Y h\:i\:s A' , $timezone->format('U'));
但是输出错误还是一样的:
<b>Graph error: </b>I don't understand ':47:48 PM\n' in command: 'COMMENT: RRD
last updated\: Monday 5th of May 2014 12:47:48 PM\n'.
我还尝试在以下内容中导入日期语法COMMENT
:
"COMMENT: Graph last updated\: date('l jS \of F Y h\:i\:s A' ,
$timezone->format('U'))\\n"
我得到的错误:
PHP Notice: Undefined property: DateTime::$format
在这一点上,我没有想法和可能的解决方案。我想知道其他人是否有类似的问题或可能的想法如何解决这个问题。我在 Perl 中创建了一个代码示例,做同样的事情,默认情况下 Perl 在底部打印日期。所以它应该离开去做。
提前感谢您花费时间和精力来帮助我解决我的问题。