似乎无法关闭php中的弃用错误

时间:2013-10-19 15:58:10

标签: php wordpress apache2 deprecated

我在开发服务器上使用的PHP版本不支持我们的生产服务器mysql_connect()。我尝试过:error_reporting = E_ALL ^ E_DEPRECATED但它不起作用。重新启动Apache后,我仍然不推荐使用错误消息。

我可以访问ini文件我不需要php函数来更改错误报告。这也适用于wordpress。

6 个答案:

答案 0 :(得分:1)

error_reporting()是一个函数。尝试:error_reporting(E_ALL ^ E_DEPRECATED ^ E_USER_DEPRECATED);。或ini_set("error_reporting", E_ALL & ~E_DEPRECATED);。然后使用echo ini_get("error_reporting");测试设置。最小的PHP版本必须是5.3.0。

答案 1 :(得分:0)

尝试将mysql_connect()替换为mysqli_connect()

答案 2 :(得分:0)

你确定你修改了正确的php.ini吗?安装中经常包含几个。这是在本地开发机器上还是在实时服务器上发生的?确保修改正确的php.ini的最佳方法是运行phpinfo文件。

创建一个新文件,将其命名为phpinfo.php并写入:

<?php echo phpinfo(); ?>

在浏览器中运行此脚本,然后转到“已加载配置文件”

这在使用WAMP安装时会让我头疼。

答案 3 :(得分:0)

WordPress会在其配置文件中将error_reporting设置为E_ALL,从而覆盖您在php.ini中设置的内容。我鼓励在error_reporting(E_ALL ^ E_DEPRECATED)中设置wp-config.php清除它。有关该设置的各种变化,请参阅Turn off deprecated errors php 5.3

答案 4 :(得分:0)

设置:define('WP_DEBUG', false);为false修复了问题。

答案 5 :(得分:0)

更改wp-includes / load.php wp_debug_mode()功能。

if ( WP_DEBUG ) {
    error_reporting( E_ALL ^ E_DEPRECATED);

代替

if ( WP_DEBUG ) {
    error_reporting( E_ALL);