How to print exact sql query in zend framework ?

前端 未结 14 1963
栀梦
栀梦 2020-12-07 09:33

I have the following piece of code which i taken from model,

    ...
                  $select = $this->_db->select()
                    ->from($th         


        
14条回答
  •  有刺的猬
    2020-12-07 10:32

    I have traversed hundred of pages, googled a lot but i have not found any exact solution. Finally this worked for me. Irrespective where you are in either controller or model. This code worked for me every where. Just use this

    //Before executing your query
    $db = Zend_Db_Table_Abstract::getDefaultAdapter();
    $db->getProfiler()->setEnabled(true);
    $profiler = $db->getProfiler();
    
    // Execute your any of database query here like select, update, insert
    //The code below must be after query execution
    $query  = $profiler->getLastQueryProfile();
    $params = $query->getQueryParams();
    $querystr  = $query->getQuery();
    
    foreach ($params as $par) {
        $querystr = preg_replace('/\\?/', "'" . $par . "'", $querystr, 1);
    }
    echo $querystr;
    

    Finally this thing worked for me.

提交回复
热议问题