PDOStatement::bindParam

(no version information, might be only in CVS)

PDOStatement::bindParam --  Binds a parameter to a the specified variable name

Description

bool PDOStatement::bindParam ( mixed parameter_name, mixed &variable [, int data_type [, int length]] )

警告

這個函數是實驗性質的。這個函數的行為、名稱、和關於此函數的任何其他文件在未來PHP的發行中可能會在不通知的情況下改變。 使用此延伸需自行承擔風險。

Binds an SQL statement parameter to the specified variable name. The SQL statement parameter can either be a named placeholder or a question mark placeholder.

Output parameters will set the value of the bound PHP variable to the value returned by the database when the SQL statement is executed. This enables you to call stored procedures with output or input/output parameters, for example, for databases that support such features.

For input-only variables, you can pass an array of input values to PDOStatement::execute() instead.

範例 1. Execute a prepared statement with named placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$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();
?>

範例 2. Execute a prepared statement with question mark placeholders

<?php
/* Execute a prepared statement by binding PHP variables */
$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();
?>