PHP-Warnung beim Start beim laden php_oci8.dll
Bin ich mit XAMPP und versuchen, konfigurieren Sie die Oracle-Verbindung für sql.
Ich auskommentiert, die Zeile extension=php_oci8.dll
und auf den ersten es endete mit einem Fehler (das oci.dll fehlt), aber später habe ich heruntergeladen instantclient von Oracle-web-Seiten. Ich habe versucht, mit den Versionen 10.2, 11.2, und 12.1, aber weder gearbeitet. Natürlich habe ich den Pfad zu diesen Bibliotheken, um meine PATH
env variable.
Die Warnung, ich bin immer beim Start von Apache: PHP Warning: PHP Startup: in Unknown on line 0
Fehler, wenn ich versuche zu verbinden ist: PHP Fatal error: Call to undefined function oci_connect() in ...
Habe ich versucht, mit php_oci8.dll
und php_oci8_11g.dll
. Diese Dateien sind in meinem php/ext
Verzeichnis (Sie waren in xampp), meine instantclient Hinzugefügt PATH
und die Warnung wird nicht angezeigt, wenn ich deaktivieren Sie diese Module. Ich habe versucht Neustart der Dienste und computer.
Können Sie mir helfen eine Lösung zu finden, wie um es richtig zu konfigurieren? Ich verwende Windows 8.1 mit Administratorrechten.
BTW. Meine phpinfo()
sagt, dass OCI8 aktiviert ist (funktioniert aber wie oci_connect
noch nicht arbeiten).
EDIT:, Wenn ich versucht PHP manuell habe ich endlich die Fehler angezeigt, was falsch war: Unable to load dynamic library 'C:\Program Files (x86)\PHP\ext\php_oci8_11g.dll' - %1 is not a valid Win32 application. in Unknown on line 0
Können Sie mir helfen, herauszufinden, wo kann ich herunterladen eine richtige version?
- Hast du sauber alle die Oracle installieren, bevor Sie neu installieren, eine andere version ?
- Ich wusste nicht, installieren Sie Oracle auf meinem PC überhaupt. Ich bin mit VPN-Verbindung zum server zu verbinden. Ich heruntergeladen habe, sqldeveloper und es hat funktioniert (es hat nicht alles installieren, obwohl)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gab es ein problem mit der 64bit version von instantclient. Wenn Sie jemals das gleiche Problem, bitte installieren Sie die 32bit-version der instantclient.
Ehrlich gesagt der einfachste Weg ist einfach zu befolgen Sie die Anweisungen: http://www.oracle.com/technetwork/articles/dsl/technote-php-instant-084410.html
Habe ich versucht, eine Menge anderer Hinweise, und Sie alle ging wirklich sehr böse auf mich (nicht nur, weil ich es mit verschiedenen bit-version - auch das habe ich kopiert die Dateien überall folgende dumme Ratschläge, und es war schwer, es zu korrigieren)
Sein, weil Ihre Oracle ist 64-bit. Entfernen Sie es und installieren Sie eine 32-bit-version des Oracle-Clients und es wird funktionieren.
Es sieht aus wie Ihre Erweiterung nicht ordnungsgemäß installiert. Versuchen Sie, Sie zu aktualisieren oder installieren Sie es mit pecl mit
Sollten Sie auch prüfen, Direktive extension_dir in der php.ini und überprüfen Sie, ob der Ordner PHP ist Hinzugefügt, um den Pfad
pecl upgrade oci8 downloading oci8-2.0.6.tgz ... Starting to download oci8-2.0.6.tgz (189,668 bytes) .........................................done: 189,668 bytes 11 source files, building WARNING: php_bin E:\xampp\php\php.exe appears to have a suffix \php.exe, but con fig variable php_suffix does not match ERROR: The DSP oci8.dsp does not exist.
extension_dir
richtig eingestellt ist und meine php/ext-dir ist Hinzugefügt, um diePATH
. Ich habe PHP-dir-zu-PFAD auch.Es gibt eine Alternative Möglichkeit, dies zu lösen: Installieren Sie das vollständige Oracle-Client, nicht das basic-zip, können Sie Sie von der oracle-Website (über 1Gb):
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/oracle12c-windows-3633015.html
Im mit Windows 10, Apache 2.4, PHP 7.1 (alle x64) und es funktioniert. Auch tryed PHP 5.6 und es funktioniert auch. Immer noch verwenden die php_oci8_11g.dll aus der basic-client zip-passend zu Ihrem php und system version.
Können Sie die Suche auf der Website finden ältere client-Versionen (11g, 32bit, etc), aber Im arbeiten mit 12c-de-client und den Zugriff auf eine Oracle 11g enterprise server.
Fand ich eine Menge von occurrencies dieser gleiche Fehler überall, aber keiner gab mir diese Lösung. Hoffnung, die hilft.