手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆

使用ZendFramework的时候打印SQL

首页 > PHP Framework >

在使用ZendFramework开发的时候,会遇到要对SQL进行优化的处理,但是从ZEND的DB类里并没有找到输出SQL的方法,唯一看到的输出也是在SELECT类里面有一个__toString()的方法,但这个方法也只能输出SELECT的语句,对于Insert,Update,Delete之类的语句并不能处理。

开始的时候,很郁闷,后来问HaoHappy,因为他是国内第一批翻译ZF手册的人,果然我一问,他一下子就说,有一个Profiler类可以解决。
翻开手册,Zend_Db_Profiler,里面果然有操作。。(注:类名是凭记忆的,以下内容也是凭记忆写出来的)

1、在DB的CONFIG里面把profiler打开,如果没有打开,则需要用$profiler =  $db->getProfiler();然后 $profiler->setEnable(true); (好象记错了,请看手册,我这里只说解决方法)

2、然后有一个设置 Profiler 的filter条件的,可以设定select,insert,update,delete的操作。

3、然后根据官方的例子,对SQL进行输出(手册上的例子,只是输出了执行时间最长的SQL哦)。如果需要每条都输出,你得在那个 if 判断外把sql 存储下来,即 $query->getQuery();

4、根据手册,还可以输出到fireBug和利用FirePHP来进行类似的debug,但我试了一下没有成功(  QEE 支持 firePHP ,不知道是否借鉴了ZEND的这个功能,猜测而己 )

纯粹是一个记录,顺便感谢一下HaoHappy




本站采用创作共享版权协议, 要求署名、非商业和保持一致. 本站欢迎任何非商业应用的转载, 但须注明出自"易栈网-膘叔", 保留原始链接, 此外还必须标注原文标题和链接.

Tags: zend, framework, sql

« 上一篇 | 下一篇 »

只显示10条记录相关文章

如何mount Smb服务共享目录 (浏览: 56168, 评论: 1)
8年了。。。我的能力还停留在写留言本的技术能力上。。。。 (浏览: 45044, 评论: 3)
ZendFramewok介绍 (浏览: 33492, 评论: 0)
Fleaphp介绍(在迟来的QeePhp前的最后介绍) (浏览: 32356, 评论: 0)
RabbitVCS 用后感 (浏览: 31630, 评论: 0)
何为RBAC (浏览: 31125, 评论: 4)
Yiiframework(Yii框架)开发笔记:续四 (浏览: 28187, 评论: 3)
如何取得当前数据的上一条和下一条的ID (浏览: 26334, 评论: 3)
zendframework 1.6终于将SOAP放进去了 (浏览: 26159, 评论: 0)
犹豫:是否采用Yii把sablog重构 (浏览: 25456, 评论: 5)

2条记录访客评论

中文免费模版也少 :)

Post by lala on 2009, March 11, 4:13 PM 引用此文发表评论 #1

你太彪悍了,一下子找到这么多,这回有得选了,慢慢的山寨,嘿嘿

Post by yhustc on 2009, March 11, 3:15 PM 引用此文发表评论 #2


发表评论

评论内容 (必填):