2011-07-19 23 views
0

我正在構建一個僅通過其參數接收Zend_Db_Rowset的類,並且我可以使用$rowset->getTable()方法提取相關的Zend_Db_Table通過Zend_Db_Rowset提取查詢零件

我想知道是否有辦法從表中取回order聲明,因爲我可以通過轉儲設置它(作爲私有屬性)。

object(Application_Model_DbTable_View_Formation)#107 (18) { 
... 
    ["_rows":protected] => array(4) { 
     [0] => array(3) { 
     [0] => string(7) "0.04095" 
     [1] => string(20) "DESCRIBE `formation`" 
     [2] => NULL 
     } 
     [1] => array(3) { 
     [0] => string(7) "0.00047" 
     [1] => string(67) "SELECT `formation`.* FROM `formation` ORDER BY `date` desc LIMIT 30" 
     [2] => NULL 
     } 
     [2] => array(3) { 
     [0] => string(7) "0.02031" 
     [1] => string(22) "DESCRIBE `v_formation`" 
     [2] => NULL 
     } 
     [3] => array(3) { 
     [0] => string(7) "0.02285" 
     [1] => string(135) "SELECT `v_formation`.* FROM `v_formation` WHERE (date >= '2011-01-01 12:00:00') AND (date <= '2011-12-31 11:59:59') ORDER BY `date` ASC" 
     [2] => NULL 
     } 
    } 
    ... 
} 
+0

這是分析器存儲並與db連接。它的內容與當前行或行集沒有任何關係,所以你只能猜測你的結果是哪個查詢。 如果你真的很想讓這個查詢存儲在你的行或行集中的某處,那麼你可以擴展Zend_Db_Table和/或Zend_Db(不能告訴現在哪一個),但這需要很多工作,技巧和很好Zend_Db組件和OOP知識。 – Diabl0

回答

2

你看到的是Zend_Db_Profiler數據。這與實際的行集沒有關係。我認爲你無法獲得創建該行集的選擇。

嚴格說到表格的順序。你無法接收它本身。您只能使用公開$table->select()->order('id DESC');方法創建訂單選擇。

+0

謝謝,花時間回答 –