我有下面一段代码,是从model中提取的,

    ...
                  $select = $this->_db->select()
                    ->from($this->_name)
                    ->where('shipping=?',$type)
                    ->where('customer_id=?',$userid);
                 echo  $select; exit; // which gives exact mysql query.
            .....

当我在zend like中使用更新查询时,

$up_value = array('billing'=> '0');
$this->update($up_value,'customer_id ='.$userid.' and address_id <> '.$data['address_Id']);      

这里我想知道确切的mysql查询.有没有可能在zend中打印mysql查询?善意的建议

推荐答案

Select对象在Zend Framework中有一个_toString()方法.

Zend Framework手册中的以下内容:

$select = $db->select()
             ->from('products');

$sql = $select->__toString();
echo "$sql\n";

// The output is the string:
//   SELECT * FROM "products"

另一种解决方案是使用Zend_DB_Profiler. 即

$db->getProfiler()->setEnabled(true);

// your code
$this->update($up_value,'customer_id ='.$userid.' and address_id <> '.$data['address_Id']); 

Zend_Debug::dump($db->getProfiler()->getLastQueryProfile()->getQuery());
Zend_Debug::dump($db->getProfiler()->getLastQueryProfile()->getQueryParams());
$db->getProfiler()->setEnabled(false);

http://framework.zend.com/manual/en/zend.db.select.html

Php相关问答推荐

Laravel迁移返回SQL错误,但SQL有效且工作正常

显示WooCommerce当前产品类别或标签的短代码

Mysqli_stmt::Execute():结果字段元数据中存在过早的EOF

如果WooCommerce中存在特定的运输方式,则隐藏其他运输方式

移动应用:在PHP中忽略Cookie?

Regex:高级删除单行PHP注释

dyld[45923]:未加载库:/usr/local/opt/libavif/lib/libavif.15dylib

除WooCommerce中的特定国家/地区外,有条件地要求填写邮政编码 checkout 字段

从 WooCommerce 购物车中删除总计部分,同时保留小计行

按类别层次 struct 过滤 Laravel 集合

Mac 上安装 php 时出现 Homebrew 错误

将一个表中的行连接为不同表MYSQL中的一列

使用 foreach php 将记录正确分配给正确的父级

如何在 Phpunit 的静态提供程序中创建测试双打?

加载 Xdebug PHP 7.4.0 失败

在shopware 6.5上可以使用什么事件来判断刚刚支付的订单的状态

Shopware 6.4.20店铺激活问题

如何获取用户之间的最新消息列表

Laravel Websockets 错误:(WebSocket 在建立连接之前关闭)

PHP Remedy API 调用以创建附件无效的条目(使用 Postman Works!)