Ist es möglich mit store_result() und bind_result() mit PHP PDO?
Meine Frage ist Recht einfach: Ist es möglich mit store_result()
und bind_result()
mit PHP PDO?
Hier finden Sie einige Beispiel-code, stieß ich auf:
$stmt = $mysqli->prepare("SELECT id, username, password, salt FROM members WHERE email = ? LIMIT 1")) {
$stmt->bind_param('s', $email); //Bind "$email" to parameter.
$stmt->execute(); //Execute the prepared query.
$stmt->store_result();
$stmt->bind_result($user_id, $username, $db_password, $salt); //get variables from result.
$stmt->fetch();
Habe ich gesehen, wie diese im Kontext von mysqli
, aber nicht mit PHP PDO. store_result()
und bind_result()
auf die verwiesen werden in einer MySQL-Datenbank auf www.php.net. Ich bin gespannt, ob Sie gültig sind, oder ob es vergleichbare Methoden.
Edit: Offensichtlich gibt es einige übersetzungen, die zwischen den beiden Methoden. Meine Vermutung ist, dass store_result
und bind_result()
sind ähnlich PDO ' s fetch()
Befehle.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Der Punkt ist, es gibt absolut keinen Sinn, weder store_result() noch bind_result() mit PDO.
Bringen Sie einfach Ihre Daten und verwenden Sie es überall Sie wünschen. Das ist der Punkt der PDO.
Nun haben Sie Ihre Benutzerdaten in
$row
array.Speicherung resultierende Zeile in separate Variablen ist sehr Praxis selten heutzutage. Aber wenn Sie es vorziehen, solche alte Art und Weise der Umgang mit Daten, könnten Sie hinzufügen
zu den oben genannten code ein, um Ihre globalen Variablen.
Das größte problem mit mysqli-Weg ist, dass es extrem schwierig ist, es zu benutzen mit jeder Ebene der Abstraktion.
Im realen Leben haben wir nie Aufruf für die Datenbank in der globalen Bereich, sondern in einer Funktion wie dieser
und für einige Grund, den diese einfache, aber meist verwendete code, extrem schwierig mit mysqli!
Im wirklichen Leben brauchen wir nicht getrennte Variablen, sondern eher single-array zurückgegeben werden. Aber mit mysqli, die wir brauchen, um diese Variablen zuerst, dann legte Sie in der Reihe, und nur dann zurücksenden. Einfach verrückt!
Statt
store_result
undbind_result
; Sie können die Sprache konstruierenlist
. Ein Beispiel für die Verwendung gilt:Den
PDO::FETCH_NUM
wird verwendet, weil:Ist es möglich und ich habe vor kurzem in meinem Projekt.