PDOStatement :: bindParam
PDOStatement :: bindParam - vincular um parâmetro para o nome da variável especificada (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)
explicação
gramática
bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] )
Vincular uma variável PHP para uma instrução SQL como um pré-tratamento correspondente nomeado ou de interrogação espaço reservado espaço reservado. Ao contrário PDOStatement :: bindValue (), esta variável está vinculada como uma referência, e só :: execute em PDOStatement () é invocado para qualquer valor.
A maioria dos parâmetros são parâmetros de entrada, ou seja, os parâmetros utilizados para construir a consulta modo somente leitura. Alguns motoristas apoiar chamar um procedimento armazenado e retornar dados como parâmetros de saída, algum apoio como os parâmetros de entrada / saída, enviar e receber dados após a atualização.
parâmetros
parâmetro
identificador de parâmetro. Para uso espaços reservados nomeados declarações preparadas deve ser semelhante a: citar o nome do parâmetro de formulário. Para espaços reservados ponto de interrogação no comando preparado, deve basear-se em parâmetro 1-indexados.
variável
Vinculado ao parâmetros de instrução nome da variável PHP SQL.
data_type
Use PDO :: PARAM_ * constantes para especificar explicitamente o tipo do parâmetro. A partir de um procedimento armazenado retorna um parâmetro INOUT, é necessário usar o operador binário OR para definir a PDO :: PARAM_INPUT_OUTPUT mordeu data_type parâmetro.
comprimento
dicas pré-alocada.
driverdata
Tipo de dados de comprimento. Para mostrar o parâmetro é um parâmetro OUT de um procedimento armazenado, você deve definir explicitamente esse comprimento.
driver_options
Valor de retorno
retorno bem sucedido TRUE, ou em caso de falha retorna FALSE.
Exemplos
espaços reservados executivos usando uma instrução preparada nomeada
<?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(); ?>
Implementação de um ponto de interrogação espaços reservados na instrução 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 utilizando uma chamada de procedimento armazenado
<?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"); ?>