Aktueller Standort: Startseite> Neueste Artikel> Detaillierte Erläuterung der grundlegenden Verwendung von PDO :: __ Konstrukt - Wie kann man schnell mit Datenbankverbindungen mit dieser Funktion beginnen?

Detaillierte Erläuterung der grundlegenden Verwendung von PDO :: __ Konstrukt - Wie kann man schnell mit Datenbankverbindungen mit dieser Funktion beginnen?

gitbox 2025-07-26

In PHP ist PDO (PHP -Datenobjekte) eine Datenbankzugriffsabstraktionsschicht, die eine leichte und konsistente Möglichkeit bietet, verschiedene Arten von Datenbanken zu verbinden und zu bedienen. Bei der Verwendung von PDO müssen Sie zunächst ein PDO -Objekt über PDO :: __ Construct erstellen, das uns helfen kann, mit der Datenbank zu interagieren. In diesem Artikel werden wir die grundlegende Verwendung von PDO :: __ konstruieren und diskutieren, wie man schnell mit Datenbankverbindungen beginnt.

1. Was ist PDO?

PDO ist eine erweiterte Bibliothek von PHP, in der Entwickler einheitliche Datenoperationen zwischen verschiedenen Arten von Datenbanksystemen (wie MySQL, PostgreSQL, SQLite usw.) ausführen können. Es unterstützt nicht nur Vorverarbeitungsanweisungen, sondern verhindert auch SQL -Injektionsangriffe. Dies ist eine empfohlene Möglichkeit, Datenbankvorgänge in der modernen PHP -Entwicklung durchzuführen.

Über PDO müssen Entwickler für jedes Datenbanksystem keine verschiedenen Verbindungscodes schreiben und auf einheitliche Weise auf die Datenbank zugreifen.

2. Grundlegende Syntax von PDO :: __ Konstrukt

PDO :: __ Konstrukt ist der Konstruktor der PDO -Klasse, das zum Erstellen von PDO -Objekten verwendet wird. Die grundlegende Syntax ist wie folgt:

 <span><span><span class="hljs-variable">$pdo</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">PDO</span></span><span>(</span><span><span class="hljs-variable">$dsn</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$options</span></span><span>);
</span></span>
  • $ DSN (Datenquellenname) : Datenquellenname, Datenbanktyp angeben, Datenbankhost, Datenbankname und andere Informationen.

  • $ userername : Der Benutzername, der zur Verbindung zur Datenbank erforderlich ist.

  • $ Passwort : Das Passwort, das zur Verbindung zur Datenbank erforderlich ist.

  • $ Optionen : Optionaler Parameter zum Konfigurieren des Verhaltens von PDO (z. B. Ausnahmemodus, Zeichensatzeinstellungen usw.).

Beispiel:

 <span><span><span class="hljs-variable">$dsn</span></span><span> = </span><span><span class="hljs-string">'mysql:host=localhost;dbname=testdb;charset=utf8'</span></span><span>;
</span><span><span class="hljs-variable">$username</span></span><span> = </span><span><span class="hljs-string">'root'</span></span><span>;
</span><span><span class="hljs-variable">$password</span></span><span> = </span><span><span class="hljs-string">''</span></span><span>;
</span><span><span class="hljs-variable">$options</span></span><span> = [
    PDO::</span><span><span class="hljs-variable constant_">ATTR_ERRMODE</span></span><span> =&gt; PDO::</span><span><span class="hljs-variable constant_">ERRMODE_EXCEPTION</span></span><span>,  </span><span><span class="hljs-comment">// Stellen Sie den Fehlermodus auf eine Ausnahme ein</span></span><span>
    PDO::</span><span><span class="hljs-variable constant_">ATTR_DEFAULT_FETCH_MODE</span></span><span> =&gt; PDO::</span><span><span class="hljs-variable constant_">FETCH_ASSOC</span></span><span>  </span><span><span class="hljs-comment">// Legen Sie die Standarddatenerfassungsmethode auf assoziatives Array fest</span></span><span>
];

</span><span><span class="hljs-keyword">try</span></span><span> {
    </span><span><span class="hljs-variable">$pdo</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">PDO</span></span><span>(</span><span><span class="hljs-variable">$dsn</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$options</span></span><span>);
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Verbindung erfolgreich!"</span></span><span>;
} </span><span><span class="hljs-keyword">catch</span></span><span> (PDOException </span><span><span class="hljs-variable">$e</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Verbindung ist fehlgeschlagen: "</span></span><span> . </span><span><span class="hljs-variable">$e</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">getMessage</span></span><span>();
}
</span></span>

Analyse:

  • Hier enthält $ dsn den Datenbanktyp (MySQL), den Datenbankhost (Localhost), den Datenbanknamen (testDB) und den Zeichensatz (UTF8).

  • Verwenden Sie PDO :: attr_errmode => pdo :: errmode_exception, um den Fehlermodus auf eine Ausnahme festzulegen. Wenn eine Datenbankverbindung oder ein Abfragefehler auftritt, wird PDO eine Ausnahme ausgelegt, die durch Fang gefangen und verarbeitet werden kann.

  • Pdo :: attr_default_fetch_mode => pdo :: fetch_assoc legt die Standarddatenerfassungsmethode auf assoziative Arrays fest.

3.. Gemeinsame Datenbanktypen und DSN -Formate

Unterschiedliche Datenbanksysteme erfordern unterschiedliche DSN -Formate. Hier sind mehrere gemeinsame Datenbanktypen DSN -Formate:

Mysql

 <span><span><span class="hljs-variable">$dsn</span></span><span> = </span><span><span class="hljs-string">'mysql:host=localhost;dbname=testdb;charset=utf8'</span></span><span>;
</span></span>

PostgreSQL

 <span><span><span class="hljs-variable">$dsn</span></span><span> = </span><span><span class="hljs-string">'pgsql:host=localhost;port=5432;dbname=testdb;'</span></span><span>;
</span></span>

Sqlite

 <span><span><span class="hljs-variable">$dsn</span></span><span> = </span><span><span class="hljs-string">'sqlite:/path/to/database.db'</span></span><span>;
</span></span>

MSSQL

 <span><span><span class="hljs-variable">$dsn</span></span><span> = </span><span><span class="hljs-string">'sqlsrv:Server=localhost;Database=testdb;'</span></span><span>;
</span></span>

4. PDO -Verbindungsoptionen

PDO bietet einige häufig verwendete Verbindungsoptionen, die konfiguriert werden können, wenn die Datenbankverbindung verbunden ist:

  • PDO :: attr_errmode : Legt den Fehlermodus fest.

    • Pdo :: errmode_silent : stillen Modus, keine Fehler gemeldet (Standardwert).

    • PDO :: Errmode_Warning : Warnmodus, PHP -Warnung ausgeben.

    • Pdo :: errmode_exception : Ausnahmemodus, Ausnahme von PDOException.

  • Pdo :: attr_default_fetch_mode : legt die Standarddaten -Abrufmethode fest.

    • Pdo :: fetch_assoc : assoziatives Array.

    • Pdo :: fetch_obj : Gibt das Objekt zurück.

    • Pdo :: fetch_num : numerisches Indexarray.

  • Pdo :: attr_emulate_prepares : Legt fest, ob die Vorverarbeitungsanweisungen simulieren.

    • Falsch : Verwenden Sie native Vorverarbeitungsanweisungen der Datenbank nicht simuliert.

    • Richtig : Simulieren Sie Vorverarbeitungsanweisungen.

Beispiel: Setzen Sie mehrere Optionen

 <span><span><span class="hljs-variable">$options</span></span><span> = [
    PDO::</span><span><span class="hljs-variable constant_">ATTR_ERRMODE</span></span><span> =&gt; PDO::</span><span><span class="hljs-variable constant_">ERRMODE_EXCEPTION</span></span><span>,
    PDO::</span><span><span class="hljs-variable constant_">ATTR_DEFAULT_FETCH_MODE</span></span><span> =&gt; PDO::</span><span><span class="hljs-variable constant_">FETCH_ASSOC</span></span><span>,
    PDO::</span><span><span class="hljs-variable constant_">ATTR_EMULATE_PREPARES</span></span><span> =&gt; </span><span><span class="hljs-literal">false</span></span><span>
];

</span><span><span class="hljs-variable">$pdo</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">PDO</span></span><span>(</span><span><span class="hljs-variable">$dsn</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$options</span></span><span>);
</span></span>

5. Fehlerhandhabung und Ausnahmefangen

Wenn die Datenbankverbindung ausfällt, wird bei der Verwendung von PDO :: __ -Konstrukt eine PDOException -Ausnahme ausgeworfen. Daher können wir die Anweisung für Versuche verwenden, um Ausnahmen zu fangen und Fehlerbehandlung durchzuführen.

 <span><span><span class="hljs-keyword">try</span></span><span> {
    </span><span><span class="hljs-variable">$pdo</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">PDO</span></span><span>(</span><span><span class="hljs-variable">$dsn</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$password</span></span><span>, </span><span><span class="hljs-variable">$options</span></span><span>);
} </span><span><span class="hljs-keyword">catch</span></span><span> (PDOException </span><span><span class="hljs-variable">$e</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"数据库Verbindung ist fehlgeschlagen: "</span></span><span> . </span><span><span class="hljs-variable">$e</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">getMessage</span></span><span>();
}
</span></span>

Durch das Fangen von Ausnahmen kann das Programm daran gehindert werden, direkt zu stürzen, wenn ein Fehler auftritt, und Fehlerinformationen können ebenfalls aufgezeichnet werden.

6. Zusammenfassung

PDO :: __ Construct ist eine Schlüsselfunktion zum Erstellen von PDO -Objekten. Verwenden Sie diese Funktion, um Verbindungen zur Datenbank einfach zu implementieren. Bei der Verbindung zu einer Datenbank übergeben wir normalerweise einen DSN, einen Datenbank -Benutzernamen, ein Passwort und einige optionale Verbindungsoptionen, um das PDO -Verhalten zu konfigurieren.

Nachdem Sie die grundlegende Verwendung von PDO gemeistert haben, können Sie sich flexibel mit verschiedenen Datenbanken verbinden und Daten über die von PDO bereitgestellten reichhaltigen Funktionen bedienen. Unabhängig davon, ob Sie einfache Webanwendungen oder komplexe Systeme auf Unternehmensebene entwickeln, kann PDO Ihnen einen effizienten und sicheren Datenbankbetrieb unterstützen.

  • Verwandte Tags:

    PDO