WordPress
Объект $ wpdb
Поиск…
замечания
Существует два способа ссылки на объект $wpdb
. Первое - использовать ключевое слово PHP global
, чтобы действовать на глобальный экземпляр объекта.
global $wpdb;
echo $wpdb->prefix;
// Outputs the prefix for the database
Второй способ использования объекта $wpdb
- $wpdb
супер глобальную переменную PHP $GLOBALS
.
echo $GLOBALS['wpdb']->prefix;
// This will also output the prefix for the database
Второй способ обескуражен, так как его нельзя считать лучшей практикой.
Выбор переменной
В самой базовой форме можно выбрать одну переменную из таблицы, вызвав метод get_var
объекта, передаваемый в SQL-запросе.
global $wpdb;
$user = $wpdb->get_var( "SELECT ID FROM $wpdb->users WHERE user_email='[email protected]'" );
Очень важно отметить, что любые ненадежные значения, используемые в запросах, должны быть экранированы для защиты от атак. Это можно сделать, используя метод prepare
объекта.
global $wpdb;
$email = $_POST['email'];
$user = $wpdb->get_var(
$wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_email=%s", $email )
);
if( !is_null( $user ){
echo $user;
} else {
echo 'User not found';
}
Выбор нескольких строк
Вы можете использовать get_results для получения нескольких строк из базы данных.
global $wpdb;
$userTable =$wpdb->prefix."users";
$selectUser = $wpdb->get_results("SELECT * FROM $userTable");
Это покажет список всех пользователей в массиве.
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow