Einstellungen in der php.ini
freischalten
SQLite3 ist eine Erweiterung (
Extension) in PHP, und falls installiert,
müsste der entsprechende Eintrag in der PHP-Konfigurationsdatei (
php.ini
)
vorhanden sein. Gefunden habe ich diesen Eintrag:
...
extension=sqlite3
...
Die Zeile mit
sqlite3
war auskommentiert, das heißt ,es stand ein Semikolon am Anfang. Das führende Semikolon habe ich entfernt und die geänderte Konfigurationsdatei
gespeichert.
SQLite3 - Unterstützung wirklich vorhanden?
Das Freischalten allein würde nichts bewirken, wenn die Erweiterung nicht auch installiert ist. Das verrät uns PHP auf der Kommandozeile (Eingabeaufforderung). Der Aufruf
php -m
zeigt alle Erweiterungen mit ihren Kurznamen an; hier gekürzt dargestellt:
> php -m
[PHP Modules]
bcmath
bz2
calendar
Core
...
sqlite3
...
Wenn also
sqlite3
in der Liste enthalten ist, dann ist diese Erweiterung auch vorhanden.
SQLite3 im PHP-Handbuch
Sucht man nach SQLite
im Handbuch, so findet man zum einen eine SQLite-Unterstützung per PDO-Treiber sowie unsere gesuchte SQLite3-Unterstützung.
Beide Erweiterungen sind wohl unabhängig voneinander, uns interessiert hier nur
SQLite3.
SQLite3 ist als
Klasse mit dem Namen
SQLite3
beschrieben.
Schaut man sich in der Doku ein wenig um, so entdeckt man bald weitere Klassen, die
zu SQLite3 gehören. Hier eine Übersicht:
-
SQLite3
- die Basisklasse zur Datenbank SQLite Version 3
-
SQLite3Stmt
- die Statementklasse
-
SQLite3Result
- die Ergebnisklasse
Damit ist erst einmal nur umrissen, wonach wir im Handbuch suchen müssen,
um Information über die SQLite3-Unterstützung zu erhalten. Was man mit den Klassen
anfangen kann, werden die Beispiele und Erklärungen in der Folge zeigen.
Arbeit mit SQLite3 möglich?
Der Kommandoaufruf
php -a
lässt den PHP-Interpreter
interaktiv arbeiten. Nun kann man PHP-Anweisungen
direkt eingeben, die nach Drücken der Eingabetaste ausgeführt werden.
Das nutzen wir aus, um die SQLite3-Unterstützung zu bewegen, uns ihre Version zu verraten.
Dazu rufen wir die Methode
version()
der Klasse
SQLite3
auf.
Da das Ergebnis ein Array ist, können wir es mit
print_r()
ausgeben.
php > print_r(SQLite3::version());
Array
(
[versionString] => 3.28.0
[versionNumber] => 3028000
)
php >
Außer, dass wir die Version nun kennen, zeigt dieser Funktionstest,
dass wir mit SQLite3 unter PHP auch wirklich arbeiten können.
Eine ganz aktuelle Referenz
Ein fortgeschrittener Programmierer wäre jetzt vielleicht an einer Übersicht
über die Klassen, deren Eigenschaften und Methoden die aktuell zur Verfügung stehen
interessiert.
Auch hier hilft PHP weiter, und zwar mit der Option
--re
.
Hinter der Option gibt man den Namen der Erweiterung an, über die man etwas
wissen möchte. In unserem Fall führt der Ausdruck
sqlite3
zum Ziel.
Hier das vollständige Kommando:
php --re sqlite3 > Referenz-sqlite3.txt
Das Ergebnis ist wirklich sehr lang, daher habe ich es gleich in der Textdatei
Referenz-sqlite3.txt
festgehalten Der Dateiname ist frei gewählt.
Betrachten wir den Inhalt der Datei, dann erfahren wir, welche Klassen es gibt,
welche Eigenschaften und Methoden diese beitzen, welche Parameter
die Methoden brauchen und vieles andere - also eine komplette Referenz.
Da die Information direkt aus der eigenen SQLite3-Erweiterung gewonnen wird,
wissen wir genau, welche Features uns tatsächlich zur Verfügung stehen.