PDOStatement::execute — executa uma instrução preparada (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
bool PDOStatement::execute ([ array $input_parameters ] )
Execute instruções preparadas. Se a instrução preparada contiver marcadores de parâmetro, você deverá escolher uma das seguintes opções:
Chame PDOStatement::bindParam() para vincular variáveis PHP a marcadores de parâmetro: se houver, passe valores de entrada e obtenha valores de saída associando variáveis vinculadas a marcadores de parâmetro
ou passe um array apenas como valores de parâmetro de entrada
parâmetros_de entrada
Um array com tantos elementos quantos os parâmetros vinculados à instrução SQL a ser executada. Todos os valores são tratados como PDO::PARAM_STR.
Você não pode vincular vários valores a um único parâmetro, por exemplo, não pode vincular dois valores a um único parâmetro nomeado em uma cláusula IN();
Os valores vinculados não podem exceder o número especificado. Se houver mais nomes de chaves em input_parameters do que os especificados pelo SQL preparado PDO::prepare(), esta instrução falhará com um erro.
Retorna TRUE em caso de sucesso ou FALSE em caso de falha.
<?php/* Execute uma instrução preparada vinculando variáveis PHP*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT nome, cor, calorias FROM fruta WHERE calorias < :calories AND color = :cor');$sth->bindParam(':calorias', $calorias, PDO::PARAM_INT);$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);$sth->execute();?>
<?php/* Executa uma instrução preparada passando um array contendo os valores inseridos*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT nome, cor, calorias FROM fruta WHERE calorias < :calories AND color = :colour');$sth->execute(array(':calories' => $calories, ':colour' => $colour));?>
<?php/* Execute uma instrução preparada passando um array de valores inseridos*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT nome, cor, calorias FROM fruta WHERE calorias < ? AND cor = ?');$sth->executar(array($calorias, $cor));?>
<?php/* Execute uma instrução preparada vinculando variáveis PHP*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT nome, cor, calorias FROM fruta WHERE calorias < ? AND color = ?');$sth->bindParam(1, $calorias, PDO::PARAM_INT);$sth->bindParam(2, $cor, PDO::PARAM_STR, 12);$sth->executar();?>
<?php/* Executa uma instrução preparada contendo uma cláusula IN usando os valores de um array */$params = array(1, 21, 63, 171);/* Cria um espaço reservado preenchido com o mesmo número de parâmetros String */$place_holders = implode(',', array_fill(0, count($params), '?'));/* para $params Para cada valor na matriz, a instrução a ser preparada contém espaços reservados sem nome suficientes. Quando a instrução é executada, os valores no array $params são vinculados aos espaços reservados na instrução preparada. Isso é diferente de usar PDOStatement::bindParam() porque requer uma variável de referência. PDOStatement::execute() atua apenas como uma alternativa à ligação por valor. */$sth = $dbh->prepare("SELECT id, nome FROM contatos WHERE id IN ($place_holders)");$sth->execute($params);?>