PDOStatement :: bindParam
PDOStatement :: bindParam - enlazar un parámetro al nombre de la variable especificada (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)
explicación
gramática
bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )
Obligar a una variable PHP en una instrucción SQL como un tratamiento previo correspondiente nombre o signo de interrogación marcador de posición del marcador de posición. A diferencia de PDOStatement :: bindValue (), esta variable se une como referencia, y sólo :: execute en PDOStatement () se invoca a cualquier valor.
La mayoría de los parámetros son parámetros de entrada, es decir, los parámetros utilizados para construir la consulta modo de sólo lectura. Algunos controladores soportan llamar a un procedimiento almacenado y los datos de regreso si lo parámetros de salida, un poco de apoyo como los parámetros de entrada / salida, tanto enviar y recibir datos después de la actualización.
parámetros
parámetro
identificador de parámetro. Para utilizar marcadores de posición con nombre declaraciones preparadas deben ser similares a: nombrar el nombre del parámetro formulario. Para marcadores de posición signo de interrogación en la declaración preparada, que debe basarse en el parámetro 1 indexados.
variable
Unido al SQL parámetros de la sentencia PHP nombre de la variable.
data_type
Utilice PDO :: PARAM_ * constantes para especificar explícitamente el tipo del parámetro. A partir de un procedimiento almacenado devuelve un parámetro INOUT, es necesario utilizar el operador binario OR para establecer el PDO :: PARAM_INPUT_OUTPUT mordió data_type parámetro.
longitud
consejos preasignados.
driverdata
Tipo de datos de longitud. Para mostrar el parámetro es un parámetro de salida de un procedimiento almacenado, debe establecer explícitamente esta longitud.
driver_options
Valor de retorno
exitoso retorno es TRUE, o en caso de error devuelve falso.
Ejemplos
Ejecutivos usando una declaración preparada llamado marcadores de posición
<?php /* 通过绑定的 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(); ?>
Implementación de un signo de interrogación marcadores de posición en la sentencia preparada
<?php /* 通过绑定的 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(); ?>
Parámetro INOUT usando una llamada de procedimiento almacenado
<?php /* 使用 INOUT 参数调用一个存储过程 */ $colour = 'red'; $sth = $dbh->prepare('CALL puree_fruit(?)'); $sth->bindParam(1, $colour, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 12); $sth->execute(); print("After pureeing fruit, the colour is: $colour"); ?>