Hauptmenü

Untermenü

PDO - Methoden - Die PDOStatement-Klasse - Daten aufbereiten

1. Die Methoden

Um denn nun die entsprechenden Platzhalter umzuwandeln, bietet uns PDO drei verschiedene Methoden an. Als da wären.

bindValue

Diese Methode arbeitet praktisch genau so wie bind_param von MySQLi.


$blubb    1;
$blubber  'blubber';
$query    'INSERT INTO bla (blubb, blubber) VALUES (?, :blubber)';
...
$stmt    -> bindValue(1$blubb, [Typ]);
$stmt    -> bindValue(':blubber'$blubber, [Typ]);

bindParam

Hier gelten dieselben Regeln wie bei bindValue. Es gibt nur einen Unterschied. Die Parameter sind zunächst mal nur Referenzen, die erst bei einem execute ausgewertet werden. Was das im Detail soll, weiß ich auch noch nicht ganz.


$blubb   1;
$blubber 'blubber';
$query   'INSERT INTO bla (blubb, blubber) VALUES (?, :blubber)';
...
$stmt   -> bindParam(1$blubb, [Typ]);
$stmt   -> bindParam(':blubber'$blubber, [Typ]);

bindColumn

Das funktioniert in etwa wie bind_result von MySQLi. Denn hier kann man die Spaltennamen der Tabellen an Variablen binden. Auch hier kann man sowohl über die Reihenfolge als auch mit konkreten Namen arbeiten.


$query 'SELECT bla, blubb FROM blubber';
...
$stmt  -> bindColumn(1$laber);
$stmt  -> bindColumn('blubb'$schwall);

2. Typangaben

Im Gegensatz zu MySQLi hat man die Varianten natürlich mal wieder komplett umgebaut.

Bei diesen Werten handelt es sich um Konstanten, die als dritter Parameter an die jeweiligen Methoden übergeben werden können. Bei PARAM_STR gibt es zusätzlich die Möglichkeit, als vierten Parameter noch die Länge vorzugeben.


$query 'SELECT bla, blubb FROM blubber';
...
$stmt  -> bindColumn(1$laberPDO::PARAM_INT);
$stmt  -> bindColumn('blubb'$schwallPDO::PARAM_STR5);

Wichtig!

In MySQLi konnte man beim Typ d auch Fließkommazahlen angeben. In PDO ist das leider nicht möglich, da PARAM_INT nur mit Ganzzahlen klarkommt. In so einem Fall muss man leider mit PARAM_STR arbeiten.

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt