PDOStatement->execute()
PDOStatement->execute() — プリペアドステートメントを実行する
説明
class PDOStatement {bool execute ( [array input_parameters] )
} プリペアドステートメントを実行します。もし、プリペアドステートメントが パラメータマーカを含む場合、次のいずれかを行わなければなりません。
- パラメータマーカに PHP 変数をバインドするため
PDOStatement->bindParam() をコールする。
関連づけされたパラメータマーカがあれば、バインドされた変数は入力値を渡す
もしくは出力値を受け取ります。
- あるいは、入力専用のパラメータ値の配列を渡す
パラメータ
- input_parameters
-
実行される SQL 文の中のバインドパラメータと同数の要素からなる、
値の配列。
ひとつのパラメータに対して複数の値をバインドすることはできません。 例えば、IN() 句の中のひとつのパラメータに対して 2 つの値をバインドすることはできません。
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。例
例 1674. バインド変数を伴うプリペアドステートメントの実行
<?php
/* バインド変数を伴うプリペアドステートメントの実行 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>
例 1675. 入力値の配列を伴うプリペアドステートメントの実行 (名前つきパラメータ)
<?php
/* 入力値の配列を伴うプリペアドステートメントの実行 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->execute(array(':calories' => $calories, ':colour' => $colour));
?>
例 1676. 入力値の配列を伴うプリペアドステートメントの実行 (プレースホルダ)
<?php
/* 入力値の配列を伴うプリペアドステートメントの実行 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?');
$sth->execute(array($calories, $colour));
?>
例 1677. 疑問符プレースホルダを伴うプリペアドステートメントの実行
<?php
/* バインド変数を伴うプリペアドステートメントの実行 */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?');
$sth->bindParam(1, $calories, PDO::PARAM_INT);
$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>
参考
PDO->prepare() |
PDOStatement->bindParam() |
PDOStatement->fetch() |
PDOStatement->fetchAll() |
PDOStatement->fetchColumn() |
Weblioに収録されているすべての辞書からPDOStatement->executeを検索する場合は、下記のリンクをクリックしてください。

- PDOStatement->executeのページへのリンク