it-swarm.com.de

Schwerwiegender Fehler: Aufruf der nicht bekannten Funktion oci_connect ()

Ich habe die nächsten Zeilen unkommentiert (in meiner php.ini):

extension=php_Oracle.dll 
extension=php_oci8.dll

Und ich habe diese Datei instantclient-basiclite-nt-11.2.0.2.0.Zip heruntergeladen und entpackt und auf Laufwerk D ...

Ich verwende Windows XP

Ich setze Umgebungsvariable wie folgt:

LD_LIBRARY_PATH     C:\instantclient_11_2:$LD_LIBRARY_PATH 
Oracle_HOME     C:\instantclient_11_2 

Wenn ich jedoch die Funktion oci_connect() ausführe, sehe ich diesen Fehler:

Schwerwiegender Fehler: Aufruf an undefinierte Funktion oci_connect () in ...

und ich habe diese Warnungen in der erroeLog-Datei gefunden:

[29-Dez-2011 00:36:39] PHP Warnung: PHP Start: Die dynamische Bibliothek 'c:\php\ext\php_oci8.dll' kann nicht geladen werden. Die angegebene Modul konnte nicht gefunden werden. in Unknown in Zeile 0

[29-Dez-2011 00:36:39] PHP Warnung: PHP Start: Die dynamische Bibliothek 'c:\php\ext\php_Oracle.dll' kann nicht geladen werden Modul konnte nicht gefunden werden.

7
afsane

Dinge zu überprüfen:

  • Sie müssen weder LD_LIBRARY_PATH noch Oracle_HOME einstellen. Sie müssen jedoch D:\instantclient_11_2 zur Umgebungsvariablen PATH hinzufügen und den Computer neu starten, damit die Änderungen übernommen werden. 

  • Überprüfen Sie vor dem Konfigurieren von PHP, ob Ihre Oracle-Clientbibliotheken tatsächlich funktionieren (versuchen Sie beispielsweise, eine Verbindung mit SQL Developer herzustellen).

  • Kommentieren Sie den extension=php_Oracle.dll aus. Es gehört zur alten und veralteten Oracle-Erweiterung.

  • Vergewissern Sie sich noch einmal, dass sich die php_oci8.dll-Datei wirklich unter c:\php\ext\php_oci8.dll befindet.

4

Haben Sie Apache neu gestartet, nachdem Sie die php_oci8.dll-Datei in Ihr php/ext-Verzeichnis gestellt haben?

2

Fügen Sie einfach diese Zeile zur Datei php.in hinzu, die auf den Speicherort der Erweiterungen verweist. Sie sollten wissen, wo sie sich befinden, normalerweise aber im Ordner php.

extension_dir = C:\xampp\php\ext ;dies ist für mich xampp verwendend, sei klug.

Es hat für mich funktioniert. Das Problem liegt beim Zugriff auf die Erweiterungen und hat nichts mit Oracle-Bibliotheken zu tun.

0
user3269964