的wpdb class reference快速閱讀後,我得到了你的上述方案與下面的代碼段的工作:
global $wpdb;
$users = $wpdb->get_results('SELECT * FROM wp_users', ARRAY_A);
foreach ($users as $user) {
print_r($user);
}
我相信爲什麼它不爲你工作的原因是因爲你沒有指定輸出類型,閱讀上述這些鏈接是你的選擇:
One of four pre-defined constants. Defaults to OBJECT. See SELECT a Row and its examples for more information.
OBJECT - result will be output as a numerically indexed array of row objects.
OBJECT_K - result will be output as an associative array of row objects, using first column's values as keys (duplicates will be discarded).
ARRAY_A - result will be output as a numerically indexed array of associative arrays, using column names as keys.
ARRAY_N - result will be output as a numerically indexed array of numerically indexed arrays.
我個人更喜歡用關聯數組工作,但你想要的對象的方法,然後指定對象作爲像這樣的get_results你的第二個參數:
$users = $wpdb->get_results('SELECT * FROM wp_users', OBJECT);
它應該很好。
完整的解決方案下面有OBJECT。只需換出變量名稱和表名。
global $wpdb;
$users = $wpdb->get_results('SELECT * FROM wp_users', OBJECT);
foreach ($users as $user) {
print_r($user->ID);
}
我也剛剛注意到,你試圖直接執行你的PHP文件,這是一個很大的不在WordPress的。您最好創建一個像admin_post這樣的wordpress鉤子的函數回調函數。機會是你從未在wordpress實例中實際運行代碼,因此$ wpdb很可能爲空。
請仔細閱讀以下內容:https://codex.wordpress.org/Plugin_API/Action_Reference/admin_post_(action)關於如何在鉤子上回調。您可以使用admin_post來創建發佈和獲取請求。
嘗試print_r($ result);在foreach循環之前 –
@RaviKumar沒有變化。 –
嘗試print_r($ result);出口;並在按下按鈕後查看底部 –