WordPress
$ wpdbオブジェクト
サーチ…
備考
$wpdb
オブジェクトを参照するには2つの方法があります。最初に、オブジェクトのグローバルインスタンスに対して作用するためにPHPキーワードglobal
を使用します。
global $wpdb;
echo $wpdb->prefix;
// Outputs the prefix for the database
$wpdb
オブジェクトを使用する2番目の方法は、PHPの$GLOBALS
スーパーグローバル変数を参照することです。
echo $GLOBALS['wpdb']->prefix;
// This will also output the prefix for the database
第2の方法は、ベストプラクティスとはみなされない可能性があるため、お勧めしません。
変数の選択
最も基本的な形式では、SQLクエリを渡すオブジェクトのget_var
メソッドを呼び出すことによって、テーブルから単一の変数を選択することができます。
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