PHPDocumentor日期问题警告

时间:2009-12-22 17:28:10

标签: php smarty phpdoc

我有一些问题让phpdoc正确运行。大部分文档都是成功生成的,但我多次收到以下警告:

  

警告:日期():不安全   依赖系统的时区   设置。您必需才能使用   date.timezone设置或   date_default_timezone_set()函数。   如果您使用任何这些方法   而你仍然得到这个   警告,你很可能拼写错误   时区标识符。我们选择了   'America/Los_Angeles'代表'PST / -8.0 /不   DST'代替   /Users/ben/bin/PhpDocumentor/phpDocumentor/Converter.inc   在第5064行

  

警告: strftime ():不安全   依赖系统的时区   设置。您必需才能使用   date.timezone设置或   date_default_timezone_set()函数。   如果您使用任何这些方法   而你仍然得到这个   警告,你很可能拼写错误   时区标识符。我们选择了   'America/Los_Angeles'代表'PST / -8.0 /不   DST'代替   phpDocumentor的/ phpDocumentor的/ Smarty的-2.6.0 /库/ Smarty_Compiler.class.php   在370行

我可以轻松地从代码中删除Smarty警告,因为它只是在渲染文档中的模板顶部生成时间戳。没什么大不了的。 phpDocumentor中的第一个错误我不确定。似乎只是为Smarty指定模板的日期:

$templ->assign("date",date("r",time()));

也许我可以删除Smarty模板和此行中的所有“日期”变量。

无论如何,此警告也在生成的文档中,索引页面只显示此警告。有什么想法在这里发生了什么?我正在使用1.4.3版本,这是我的标志/选项:

#!/usr/bin/env bash
phpdoc \
    --title 'Asra Documentation' \
    --directory library/Asra \
    --target docs \
    --defaultcategoryname Asra \
    --defaultpackagename Asra \
    --quiet on \
    --output HTML:frames:phpedit

1 个答案:

答案 0 :(得分:7)

这是PHP 5.3正在运行。由于给出的原因(依赖于系统设置是不安全的),PHP 5.3+要求您设置时区。

如果可以,只需在bootstrap / init / settings文件中调用date_default_timezone_set()即可。您还可以specify it in an .htaccess file使代码无问题,例如:

php_value date.timezone America/Vancouver