после быстрого чтения из 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. Вам лучше создать функцию обратного вызова функции с помощью wordpress hook, например admin_post. Скорее всего, вы никогда не запускаете код в экземпляре wordpress, и, следовательно, $ wpdb, скорее всего, будет null.
прочитайте следующее: https://codex.wordpress.org/Plugin_API/Action_Reference/admin_post_(action) о том, как обратный вызов на крюке. Вы можете использовать admin_post для создания как сообщений, так и получения запросов.
Попробуйте print_r ($ result); перед тем, как сделать петлю foreach –
@ RaviKumar без изменений. –
Попробуйте print_r ($ result); Выход; и см. после нажатия кнопки управления U внизу –