PDOStatement::bindParam – Einen Parameter an den angegebenen Variablennamen binden (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
bool PDOStatement::bindParam ( gemischter $parameter, gemischter &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, gemischte $driver_options]]])
Binden Sie eine PHP-Variable an den entsprechenden benannten Platzhalter oder Fragezeichen-Platzhalter in der SQL-Anweisung, die für die Vorverarbeitung verwendet wird. Im Gegensatz zu PDOStatement::bindValue() ist diese Variable als Referenz gebunden und nimmt ihren Wert nur an, wenn PDOStatement::execute() aufgerufen wird.
Die meisten Parameter sind Eingabeparameter, d. h. Parameter werden schreibgeschützt zum Erstellen der Abfrage verwendet. Einige Treiber unterstützen das Aufrufen gespeicherter Prozeduren und die Rückgabe von Daten als Ausgabeparameter, andere unterstützen es als Eingabe-/Ausgabeparameter, sowohl beim Senden von Daten als auch beim Empfangen aktualisierter Daten.
Parameter- Parameter-ID. Bei vorbereiteten Anweisungen, die benannte Platzhalter verwenden, sollte der Parametername die Form :name haben. Bei vorbereiteten Anweisungen, die den Fragezeichen-Platzhalter verwenden, sollte die Parameterposition beginnend mit 1 indiziert werden.
Variable Der PHP-Variablenname, der an den SQL-Anweisungsparameter gebunden ist.
data_type verwendet die PDO::PARAM_*-Konstanten, um den Typ des Parameters explizit anzugeben. Um einen INOUT-Parameter aus einer gespeicherten Prozedur zurückzugeben, verwenden Sie den bitweisen OR-Operator für den data_type-Parameter, um das PDO::PARAM_INPUT_OUTPUT-Bit festzulegen.
Hinweis zur Längenvorbelegung .
Die Länge des Datentyps „driverdata“ . Um anzuzeigen, dass der Parameter ein OUT-Parameter einer gespeicherten Prozedur ist, muss diese Länge explizit festgelegt werden.
Treiberoptionen
Gibt TRUE bei Erfolg oder FALSE bei Fehler zurück.
<?php/* Führen Sie eine vorbereitete Anweisung über gebundene PHP-Variablen aus*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT name, color,calories FROM Fruit WHEREcalories < :calories AND color = :colour');$sth->bindParam(':calories', $calories, PDO::PARAM_INT);$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);$sth->execute();?>
<?php/* Führen Sie eine vorbereitete Anweisung über gebundene PHP-Variablen aus*/$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT name, color,calories FROM Fruit WHEREcalories < ? AND color = ?');$sth->bindParam(1, $calories, PDO::PARAM_INT);$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);$sth->execute();?>
<?php/* Rufen Sie eine gespeicherte Prozedur mit INOUT-Parametern auf*/$colour = 'red';$sth = $dbh->prepare('CALL puree_fruit(?)');$sth->bindParam(1, $colour, PDO::PARAM_STR|PDO::PARAM_INPUT_OUTPUT, 12);$sth->execute();print("Nach dem Pürieren der Früchte bleibt die Farbe erhalten ist: $color");?>