【发布时间】:2020-05-08 16:53:28
【问题描述】:
我使用 log4php 库日志错误仅用于控制台(标准输出)。但是当我在浏览器上运行我的代码时,它会在浏览器上输出,这是我不希望发生的。
我已经推荐并尝试过 logs php error but not display it in browser,但这些答案都没有为我解决我的代码很简单。
<?php
error_reporting(E_ERROR | E_PARSE);
error_reporting(0);ini_set('display_errors', 'Off');
require_once("log4php/Logger.php");
$logger = Logger::getLogger("main");
$logger->info("This is an informational message.");
$logger->warn("I'm not feeling so good...");
配置文件:
<configuration xmlns="http://logging.apache.org/log4php/">
<appender name="default" class="LoggerAppenderConsole">
<layout class="LoggerLayoutSimple" />
</appender>
<root>
<appender_ref ref="default" />
</root>
这会在浏览器上输出,
INFO - 这是一条信息性消息。警告 - 我感觉不太好......
我希望它只在标准输出上。在这种情况下,如果我对 stodut 的理解有误,请告诉我
回答后编辑我的工作代码:
<?php
require_once("log4php/Logger.php");
Logger::configure("log4php/config.xml");
$logger = Logger::getLogger("default");
$logger->info("This is an informational message.");
$logger->warn("I'm not feeling so good...");
【问题讨论】:
-
请出示您的配置文件好吗?
-
包含的配置文件
-
您可能需要检查是否the script is being run via browser or console 并且仅在它是cli 时运行记录器。如果脚本通过浏览器运行,stdout 是浏览器,而不是系统。