0

我使用 Zend_Debug::dump 将变量转储到 Zend_Log 文件中。如何让它停止将输出包装在 HTML 标记中?

该文档说“如果输出流被检测为 Web 演示文稿,则 var_dump() 的输出将使用 » htmlspecialchars() 进行转义并使用 (X)HTML 标记进行包装。” 为什么它认为我的日志文件是 Web 演示文稿?

转储函数的方法有一个布尔 $echo 标志。即使这是 FALSE,我也会在我的日志文件中获得 HTML 标记。

谢谢你的帮助!

4

1 回答 1

1

Zend Debug 总是使用 htmlspecialchars() 来引用。您不能通过提供的参数禁用此功能。

"echo" 的布尔值仅用于禁用 var_dump()(在 Zend_Debug 中使用)打印到浏览器。

Zend_Debug::dump() 中的代码:

$output = htmlspecialchars($output, ENT_QUOTES);

    if (self::getSapi() == 'cli') {
        $output = PHP_EOL . $label
                . PHP_EOL . $output
                . PHP_EOL;
    } else {
        if(!extension_loaded('xdebug')) {
            $output = htmlspecialchars($output, ENT_QUOTES);
        }

        $output = '<pre>'
                . $label
                . $output
                . '</pre>';
    }
于 2011-09-21T07:52:58.150 回答