【发布时间】:2017-05-06 01:56:52
【问题描述】:
我是 PHP 新手,正在尝试了解如何调试代码。我正在使用ini_set 和ini_get 函数。
这是我的代码:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('log_errors', 1);
ini_set('log_errors_max_len', 0); // 0 = unlimited length
ini_set('error_log', '/var/www/html/debugging/php_errors.log');
echo $error->abc; // should give error
// E_ERROR - run out of memory
ini_set('memory_limit', '1K');
var_dump((object) range(0, 100000));
require 'abc.php';
?>
所有错误都会记录到 php_errors.log 文件中,也会显示在浏览器上。但是当我使用var_dump((object) range(0, 100000)); 引入致命错误以耗尽内存时,我在浏览器上看到一个空白屏幕,而错误被记录到 php_errors.log。
我是否需要更改任何其他设置才能在浏览器上显示错误并登录文件。我只是想在这里玩 PHP。
【问题讨论】:
-
PHP运行在什么模式下? apache/mod_php 还是 fpm?
-
它运行在 Apache 模式 Server API: Apache 2.0 Handler
标签: php