闭包编译器执行中的Php错误

时间:2010-04-06 19:17:12

标签: php compression compiler-errors google-closure google-closure-compiler

当我运行php-closure时,我收到了PHP错误

Undefined index:  HTTP_IF_NONE_MATCH in <b>/php-closure.php</b> on line <b>183</b>

php-closure的第184行是

trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) {

仅当关闭已将压缩的javascript文件写入目录一次时才会发生此错误,如果该目录已清空,则不会出现错误。这个错误意味着什么,我该如何避免呢?

非常感谢你!

1 个答案:

答案 0 :(得分:3)

这很可能是一个可以忽略的信息。在检查其值之前,代码应首先检查服务器阵列中是否存在HTTP_IF_NONE_MATCH。 $ _SERVER中设置的内容往往会从服务器更改为服务器(以及客户端发送的标头),因此原始开发人员可能会设置该值,并且不考虑检查它。

您可以使用支票

添加相关行
if (array_key_exists("HTTP_IF_NONE_MATCH", $_SERVER))

(取决于程序的逻辑和流程是否允许这样做)

或者调低错误报告,以便在应用程序的最开头显示错误报告(不建议通知,但如果您无法触摸包,则需要mybe):

error_reporting(E_ALL ^ E_NOTICE); 

@Ivo在他的评论中有一个很好的第三种选择。