簡體   English   中英

getTraceAsString()整行打印

[英]getTraceAsString() printing out as one whole line

我正在使用php方法getTraceAsString() ,該方法會彈出如下錯誤消息:

#0 /var/www/wordpress/wp-content/themes/Aisis-Framework/AisisCore/Template/Builder.php(147): AisisCore_Template_Builder->_render_template_array(Array, 'navigation') #1 /var/www/wordpress/wp-content/themes/Aisis-Framework/index.php(3): AisisCore_Template_Builder->render_view('navigation') #2 /var/www/wordpress/wp-includes/template-loader.php(47): include('/var/www/wordpr...') #3 /var/www/wordpress/wp-blog-header.php(16): require_once('/var/www/wordpr...') #4 /var/www/wordpress/index.php(17): require('/var/www/wordpr...') #5 {main}

如您所見,是一根巨大的弦。 他們給出的示例將跡線打印為單獨的行。 有什么我要做的嗎?

這是帶有換行符的字符串,而不是HTML。 查看頁面的源代碼。

將輸出包裝在<pre></pre>標記中,或將換行符替換為HTML換行符。

preg_replace("/\n/", '<br>', $trace);

我為ZF2錯誤日志做了一些功能,以及$ e-> getTraceAsString();的格式

希望這對您有幫助。

public function Errorcatch(\Exception $e) {
        $log = "<div class='error_main'>";
            $log.= "<br /><b>Error Time :</b>" . date('Y-m-d H:i:s A');
            $log.= "<br /><b>Error Code :</b>" . $e->getCode();
            $log.= "<br /><b>Error Message :</b>" . $e->getMessage();
            $log.="<br /><b>Error File :</b>" . $e->getFile();
            $log.="<br /><b>Error File Line :</b>" . $e->getLine();
             $log.="<br /><b>Error Trace :</b><br />" . preg_replace("/\n/", '<br>', $e->getTraceAsString());
        $log.= "</div>";
        $this->getServiceLocator()->get('Zend\Log')->info($log); // This line write the log file.
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM