Heim > Backend-Entwicklung > PHP-Tutorial > yii 如何使用 CWebLogRoute 记录和调试变量 route delete route add default gw linux route ad

yii 如何使用 CWebLogRoute 记录和调试变量 route delete route add default gw linux route ad

WBOY
Freigeben: 2016-07-29 08:48:34
Original
1337 Leute haben es durchsucht

简介

我看了几遍关于使用外部库来调试PHP代码(如: firePHP)的文章, 读了这篇文章你会发现在 Yii 中没有必要使用这些外部库.
Yii 内置了强大的日志记录类. 如果你阅读了记录日志的文档, 你可以发现我们可以决定我们希望记录的日志, 这正是我们要做的,使用 CWebLogRoute 创建一个 Yii 版本的 FirePHP.

配置

在我们的 protected/config/main.php 配置文件中添加配置:

<code><span>'log'</span>=><span>array</span>(
    <span>'class'</span>=><span>'CLogRouter'</span>,
    <span>'routes'</span>=><span>array</span>(
        <span>array</span>(
            <span>'class'</span>=><span>'CWebLogRoute'</span>,
            <span>//</span><span>// I include *trace* for the</span><span>// sake of the example, you can include</span><span>//</span><span>// more levels separated by commas</span><span>'levels'</span>=><span>'trace'</span>, 
            <span>//</span><span>// I include *vardump* but you</span><span>// can include more separated by commas</span><span>'categories'</span>=><span>'application.*,system.db.*,vardump'</span>, 
            <span>//</span><span>// This is self-explanatory right?</span><span>'showInFireBug'</span>=><span>true</span> ), 
        ),
),</code>
Nach dem Login kopieren

使用

准备完毕,现在让我们来追踪一下变量来测试一下, 如下:

<code><span>public</span><span><span>function</span><span>actionTrace</span><span>()</span>{</span><span>$test</span> = <span>'This is a test'</span>;

    <span>$anotherTest</span> = <span>array</span>(<span>'one'</span>,<span>'two'</span>,<span>'three'</span>);

    <span>echo</span> Yii::trace(CVarDumper::dumpAsString(<span>$test</span>),<span>'vardump'</span>);

    <span>echo</span> Yii::trace(CVarDumper::dumpAsString(<span>$anotherTest</span>),<span>'vardump'</span>);

    <span>echo</span> Yii::trace(CVarDumper::dumpAsString(<span>$this</span>),<span>'vardump'</span>);
}</code>
Nach dem Login kopieren

Yii 的 FirePHP 函数

上面的代码写起来比较长, 我们来使用一下 强的建议, 让我在 index.php 页面写一个像 FirePHP 函数:

<code><span>public</span><span><span>function</span><span>actionTrace</span><span>()</span>
{</span><span>//</span><span>// In your index.php or your globals.php file</span><span><span>function</span><span>fb</span><span>(<span>$what</span>)</span>
    {</span><span>echo</span> Yii::trace(CVarDumper::dumpAsString(<span>$what</span>), <span>'vardump'</span>);
    }

    <span>// </span><span>// using the above examples now we could</span><span>$test</span> = <span>'This is a test'</span>;

    fb(<span>$test</span>);
}</code>
Nach dem Login kopieren

OK, 全部完成了,我们的调试器中没有使用外部的类.

补充

此方法无需安装chromephp 插件,firebug浏览器均可使用,opera,chrome,firefox等都适用。

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了yii 如何使用 CWebLogRoute 记录和调试变量,包括了route,eblog方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage