Signatur
Beschreibung
ociinternaldebug() ist ein veralteter Alias der Funktion oci_internal_debug() und aktiviert bzw. deaktiviert die interne Debug-Ausgabe der Oracle OCI8-Erweiterung. Wird der Parameter auf 1 gesetzt, gibt die Erweiterung ausführliche interne Diagnoseinformationen aus, die beim Aufspüren von Verbindungsproblemen oder Fehlern auf Treiberebene hilfreich sein können.
Die Funktion ist in erster Linie für Entwickler gedacht, die tief in die Funktionsweise des OCI8-Treibers eintauchen müssen. Im Produktionsbetrieb sollte sie niemals aktiviert bleiben, da die Debug-Ausgaben sensible Verbindungsinformationen enthalten können und die Leistung beeinträchtigen.
Wichtig: ociinternaldebug() gilt seit PHP 5.4 als veraltet (deprecated). Es sollte stattdessen direkt oci_internal_debug() verwendet werden. In neueren PHP-Versionen (ab PHP 8.0) wurde der OCI8-Bereich grundlegend überarbeitet; die Verfügbarkeit dieser Funktion hängt von der installierten OCI8-Erweiterungsversion ab.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $onoff Pflicht | int | Gibt an, ob das Debug-Logging aktiviert (1) oder deaktiviert (0) werden soll. |
Rückgabewert
Beispiele
Internes OCI8-Debugging aktivieren
<?php
// Veralteten Alias verwenden (besser: oci_internal_debug() nutzen)
ociinternaldebug(1);
$conn = oci_connect('benutzer', 'passwort', 'localhost/XE');
if (!$conn) {
$e = oci_error();
echo 'Verbindungsfehler: ' . htmlspecialchars($e['message']);
exit;
}
echo 'Verbindung hergestellt.';
// Debugging wieder deaktivieren
ociinternaldebug(0);
oci_close($conn);
Empfohlene Alternative mit oci_internal_debug()
<?php
// Bevorzugte, nicht veraltete Variante:
oci_internal_debug(1);
$conn = oci_connect('benutzer', 'passwort', 'localhost/XE');
if (!$conn) {
$e = oci_error();
echo 'Verbindungsfehler: ' . htmlspecialchars($e['message']);
exit;
}
echo 'Verbindung hergestellt (mit modernem API).';
oci_internal_debug(0);
oci_close($conn);
// Wichtig · Fallstricke
Deprecation: ociinternaldebug() ist ein veralteter Alias und sollte nicht mehr in neuem Code verwendet werden. Verwende stattdessen oci_internal_debug().
Sicherheit: Die Debug-Ausgaben können interne Verbindungsdetails, Benutzernamen und SQL-Anweisungen enthalten. Diese Funktion darf niemals im Produktionsbetrieb aktiv sein, da Angreifer über Ausgabefehler oder Logdateien Zugriff auf sensible Informationen erlangen könnten.
Verfügbarkeit: Die Funktion steht nur zur Verfügung, wenn PHP mit der OCI8-Erweiterung kompiliert oder diese dynamisch geladen wurde. Ohne Oracle-Treiber-Bibliothek (Instant Client oder vollständige Oracle-Installation) ist die Erweiterung nicht verfügbar.