@ini_set('log_errors','On');
和define('WP_DEBUG', true);
我正试图创建一个错误日志文件,但我对这两个文件感到困惑。log_errors
和WP_DEBUG
会产生什么样的错误?
define('WP_DEBUG_LOG', true);
会将错误记录到wp内容目录中的debug.log文件中,@ini_set('log_errors','On');
允许您指定要保存错误的文件
@ini_set('log_errors', 1);
@ini_set('display_errors', 0); /* enable or disable public display of errors (use 'On' or 'Off') */
@ini_set('error_log', dirname(__FILE__) . '/wp-content/logs/your-error-file.log'); /* path to server-writable log file */
@ini_set( 'error_reporting', E_ALL ^ E_NOTICE ); /* the php parser to all errors, excreportept notices. */
@ini_set('log_errors','On');
选项将PHP处理程序设置为记录错误。它是一个用于控制脚本行为的通用配置选项。更多关于这里的功能
另一方面,define('WP_DEBUG', true);
是非常特定于WP的,它用于捕获和打印到屏幕/写入到文件的WP特定错误。点击此处了解更多信息。
写入日志文件
- PHP
如果PHP是Apache2模块,则PHP将错误日志存储在/var/log/apache2
中。共享主机通常将日志文件存储在根目录/log
子文件夹中。
如果您有权访问php.ini文件,您可以指定如下路径:
error_log = /var/log/custom-logging-script.log
- WordPress
您可以通过设置define( 'WP_DEBUG_LOG', true );
来告诉WP将条目记录到文件中。这将导致所有错误也被保存到/wp-content/
目录中的debug.log
日志文件中。
- 或者
如果您想快速检查一个函数或变量,请尝试类似error_log($my_error, 3, "/var/tmp/my-errors.log");
的方法。这是一个方便的功能,这里有更多详细信息。
使用什么取决于您的需求和您想要调试的内容。