PDOStatement::execute -- Execută o instrucţiune pregătită
Descriere
bool PDOStatement::execute ( [array input_parameters] )
Execută instrucţiunea pregătită. Dacă aceasta include parametri, trebuie fie:
a) să se apeleze PDOStatement::bindParam() pentru a lega variabilele PHP la parametri: variabilele legate îşi trec valorile ca valori de intrare şi primesc ca valori de ieşire, dacă există, parametrii asociaţi
b) să se treacă o matrice numai cu valorile de intrare ai parametrilor
Parametri
input-parameters
O matrice de valori cu tot atâtea elemente câţi parametri sunt legaţi în instrucţiunea SQL executată.
Nu pot fi legate mai multe valori la un singur parametru; de exemplu, nu pot fi legate două valori la un singur parametru într-o clauză IN().
Valori întoarse
Întoarce TRUE în cazul succesului sau FALSE la eşec.
Exemple
1. Executarea unei instrucţiuni pregătite cu variabile legate
<?php
/* Executa o instructiune pregatita prin legarea variabilelor 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();
?>
2. Executarea unei instrucţiuni pregătite cu o matrice de valori inserate (numite parametri)
<?php
/* Executa o instructiune pregatita prin trecerea unei matrici de valori inserate */
$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));
?>
3. Executarea unei instrucţiuni pregătite cu o matrice de valori inserate (placeholders)
<?php
/* Execute a prepared statement by passing an array of insert values */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < ? AND colour = ?');
$sth->execute(array($calories, $colour));
?>
4. Executarea unei instrucţiuni pregătite cu marcatori „?”
<?php
/* Executa o instructiune pregatita prin legarea variabilelor 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();
?>