PHP未定义索引 - 仅在开发环境中

时间:2014-11-06 16:39:32

标签: php wordpress

我不是一个PHP开发人员 - 对于一个noob问题感到抱歉 - 但我对我给出的PHP代码的行为感到困惑。在生产和UAT环境中一切正常,但在开发环境中处理集合时出现问题。

在wordpress项目中,这样的代码会出错:

$contact_display_2    =   $post_meta['contact_display_2'][0];

错误是: 注意:未定义的索引:第85行的/www/wp-content/themes/custom/standard-content.php中的contact_number_2

我很好理解$ post_meta数组中没有这样的变量,而isset()函数将有助于解决这个特殊错误。我的问题是:在环境配置中需要改变什么才能使应用程序在生产环境中以与生产相同的方式工作?感谢

1 个答案:

答案 0 :(得分:0)

当你发现自己编写的代码很糟糕时,通常的工作是修改你的php.ini文件并关闭这个参数

display_errors=Off

这将停止浏览器上显示的错误,但它们仍可能会记录到文件中,请参阅error_log = "some file in a folder"

如果您在Apache虚拟主机中运行WP项目,更好的解决方案是从虚拟主机定义中关闭此参数,如此

php_flag display_errors Off

这种方式更好,因为它只会为一个写得不好的网站关闭此参数,而不是每个您可能正在开发/维护的网站。这会阻止您编写代码,就像编写您现在所处的站点的开发人员一样糟糕。