問題描述
我正在尋找一種方法,我可以打印執行的 sql 查詢之後:
$wpdb->query(
$wpdb->prepare("INSERT
INTO tbl_watchprosite SET
keywords=%s,url_to_post=%s,description=%s,
date_captured=%s,crawl_id=%d,
image_main=%s,images=%s,brand=%s,
series=%s,model=%s,condition=%s,box=%s,
papers=%s,year=%s,case_size=%s,status=%s,listed=%s,
asking_price=%s,retail_price=%s,payment_info=%s,forum_id=%d",
$this->getForumSettings()->search_meta,$element->href,$post_meta['description'],current_time('mysql'),$cid,$post_meta['image_main'],$images,$post_meta[0],$post_meta[1],$post_meta[2],$post_meta[3],$post_meta[4],$post_meta[5],$post_meta[6],$post_meta[7],$status,$post_meta[9],$post_meta[10],$post_meta[11],$this->getForumSettings()->ID)
);
如果我可以看到查詢中的值是什麼,這將是很棒的。
謝謝
最佳解決方案
$wpdb 對象具有一些屬性設置:
// Print last SQL query string
$wpdb->last_query
// Print last SQL query result
$wpdb->last_result
// Print last SQL query Error
$wpdb->last_error
請注意,在 wp-config.php 中設置 defined( 'SAVEQUERIES', true ); 時,您將只得到結果。
次佳解決方案
將其添加到您的 wp-config.php 中
define('SAVEQUERIES', true);
然後在你的主題的腳下放這個:
<?php
if (current_user_can('administrator')){
global $wpdb;
echo "<pre>";
print_r($wpdb->queries);
echo "</pre>";
}//Lists all the queries executed on your page
?>
也可以使用
global $wpdb;
echo $wpdb->last_query;//lists only single query
在您的查詢頁面中查詢後;
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。