Alten MySQL-PHP-Code mit veralteten mysql_*-Funktionen neu schreiben
In dieser modernen Ära der PHP-Entwicklung ist es unerlässlich, auf dem Laufenden zu bleiben- auf dem neuesten Stand mit Best Practices. Eine der dringendsten Sorgen ist die Abschaffung von mysql_*-Funktionen zugunsten sichererer und stabilerer vorbereiteter Anweisungen und PDOs (PHP-Datenobjekte).
Wenn Sie sich in der unglücklichen Situation befinden, mit Legacy-Code zu arbeiten, ist dies der Fall Verwendet immer noch mysql_*-Funktionen, keine Angst! Hier ist eine Schritt-für-Schritt-Anleitung, die Ihnen hilft, diesen Übergang erfolgreich zu meistern.
Konvertieren von Verbindungsparametern
Ihre Erstkonfiguration wird wie folgt in die Verbindungszeichenfolge des PDO konvertiert:
<code class="php">// Old: $db = new dbConn('127.0.0.1', 'root', 'pass', 'people', 'animals'); // New: $db = new PDO('mysql:host=127.0.0.1;dbname=people;charset=UTF-8', 'root', 'pass');</code>
Redundante Funktionen entfernen
Konstruktoren (__construct) und Destruktoren (__destruct) sind bei PDO nicht mehr erforderlich. Die Verbindung wird beim Instanziieren des PDO-Objekts automatisch hergestellt.
Refactoring der Datenbankauswahl
Die Funktion selectDb wird ebenfalls überflüssig gemacht. Die Datenbankauswahl ist in die PDO-Verbindungszeichenfolge integriert.
Aktualisierte Klasse
Der folgende Code spiegelt die aktualisierte dbConn-Klasse wider:
<code class="php">class dbConn extends PDO { public function __construct($dsn, $user, $password, $options = []) { parent::__construct($dsn, $user, $password, $options); } }</code>
Erweiterbarkeit
Bei Bedarf können Sie PDO erweitern, um Ihre eigene benutzerdefinierte Datenbankklasse zu erstellen. Dies ermöglicht mehr Flexibilität und Flüssigkeit in Ihrem Code.
Beispielverwendung
<code class="php">$db = new dbConn('mysql:host=127.0.0.1;dbname=people;charset=UTF-8', 'root', 'pass'); // Query using prepared statements $statement = $db->prepare('SELECT * FROM users WHERE name = ?'); $statement->execute([$name]);</code>
Fazit
Einbindung von PDO Ihr PHP-Code sorgt für mehr Sicherheit, Stabilität und Entwicklerfreundlichkeit. Wenn Sie diese Schritte befolgen, können Sie alten mysql_*-Code erfolgreich neu schreiben und Ihre PHP-Entwicklungspraktiken verbessern.
Das obige ist der detaillierte Inhalt vonWie kann ich alten MySQL-PHP-Code mit veralteten „mysql_*'-Funktionen mit modernen vorbereiteten Anweisungen und PDO neu schreiben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!