OOP mit PHP5 - Einstiegstutorial 3 - Die MySQL-Klasse Teil 1
1. Die Abschnitte
- Einführung
- Die MySQL-Klasse Teil 1
- Die MySQL-Klasse Teil 2
- Die MySQL-Klasse Teil 3
- Die Abstract-Klasse Teil 1
- Die Abstract-Klasse Teil 2
- Nutzung der Klassen
2. Der grundsätzliche Aufbau
Unsere MySQL-Klasse soll die folgenden Anforderungen erfüllen:
- Eine Verbindung zum MySQL-Server und dann zur entsprechenden Datenbank herstellen.
- Die Verbindung automatisch trennen.
INSERT-,UPDATE-,DELETE- oderREPLACE-Anfragen ausführen.SELECT-Anfragen ausführen und das entsprechende Ergebnis zurückliefern.
Struktur der Klasse
Aus diesen Anforderungen ergeben sich dann folgende Eigenschaften und Methoden für unsere Klasse:
-
Eigenschaften
$confür den "Zeiger" auf die Verbindung zum Server$resultfür den "Zeiger" auf die Abfrage
-
Methoden
__constructals Konstruktormethode für die automatische Verbindung zum MySQL-Server und Datenbank__destructals automatische Trennung zum MySQL-ServerdoQueryfürINSERT-,UPDATE-,DELETE- oderREPLACE-AnfragendoSelectfürSELECT-Anfragen
3. Sichtbarkeit
Eigenschaften
Da wir alle Eigenschaften innerhalb der Klasse verarbeiten, setzen wir die Sichtbarkeit auf private.
<?php
class MySQL
{
private $con;
private $result;
}
?>
Erläuterung
$con ist der "Zeiger" zur entsprechenden Verbindung zum MySQL-Server und $result für den auf die aktuelle Abfrage.
Methoden
Da wir den Zugriff auf diese Methoden über unsere "Abstraktionsschicht" steuern, setzen wir die Sichtbarkeit bei allen auf
protected. Aber aufgepasst! Es gibt da eine kleine Feinheit, zu der ich später komme. Ich warne euch nur mal
vor.
<?php
class MySQL
{
...
protected function __construct ()
{
...
}
protected function __destruct ()
{
...
}
protected function doQuery ()
{
...
}
protected function doSelect()
{
...
}
}
?>
Erläuterung
Den Konstruktor __construct nutzen wir später zum Verbindungsaufbau und den Destruktor __destruct zum Trennen
der Verbindung. doQuery ist die Methode für die INSERT-, UPDATE-, DELETE- oder
REPLACE-Anfragen und doSelect für die SELECT-Anfragen.
zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt