Twój błąd wskazuje na niezgodność typu wbudowanego.
Rozwiąż go, wykonując następujące kroki:
Upewnij się, że pobierasz i instalujesz Oracle klient błyskawiczny pod adresem:http://www.oracle.com/technetwork/topics/winsoft -085727.html , ale uwaga:
- Zanotuj swoją Oracle wersja bazy danych; użyj wersji 12.1.x dla bazy danych Oracle 12c i Wersja 11.1.x za 11g wydania.
- W obu przypadkach upewnij się, że pobierasz Basic Lite wersja natychmiastowego klienta Oracle.
Następnie dodaj lokalizację natychmiastowego klienta Oracle do zmiennej systemowej Path w obszarze Zmienne środowiskowe. Równie dobrze upewnij się, że masz oba PHP swojego xampp i jego ex dostępne i tam również ustawione (jeśli nie, dodaj je).
Następnie przejdź do dodania nowej zmiennej systemowej z TNS_ADMIN jako nazwa zmiennej i lokalizacja do natychmiastowego klienta Oracle jako wartość zmiennej .
Zdefiniuj także zmienne użytkownika PATH z tą samą lokalizacją do natychmiastowego klienta Oracle jako wartość .
Po tym etapie uruchom ponownie komputer, aby uzyskać pełną propagację nowo zdefiniowanych zmiennych środowiskowych.
Po włączeniu możesz otworzyć Wiersz poleceń systemu Windows i uruchom gdzie oci* aby upewnić się, że zmienne środowiskowe zostały dobrze zdefiniowane; odpowiedź powinna wyglądać tak:
C:\Users\flex>where oci*
C:\oraclexe\app\oracle\product\11.2.0\server\bin\oci.dll
C:\oraclexe\app\oracle\product\11.2.0\server\bin\ocijdbc11.dll
C:\oraclexe\app\oracle\product\11.2.0\server\bin\ocijdbc11.sym
C:\oraclexe\app\oracle\product\11.2.0\server\bin\ociw32.dll
C:\instantclient_11_2\oci.dll
C:\instantclient_11_2\oci.sym
C:\instantclient_11_2\ocijdbc11.dll
C:\instantclient_11_2\ocijdbc11.sym
C:\instantclient_11_2\ociw32.dll
C:\instantclient_11_2\ociw32.sym
Jeśli nie, musiałeś coś przeoczyć i musisz ponownie przejść do procesu, zapewniając skuteczne jego ukończenie.
Możesz teraz przejść do pliku php.ini (pod warunkiem, że zmienne środowiskowe są dobrze zdefiniowane) i włączyć oci rozszerzenia (php_oci8.dll i php_oci8_11g.dll) poprzez ich odkomentowanie; możesz to osiągnąć, po prostu usuwając półkolumnę (; ) przed wspomnianymi rozszerzeniami.
Pamiętaj, aby zapisać plik php.ini, a następnie zrestartować lub uruchomić Apache, jeśli jeszcze nie jest uruchomiony.
Aby sprawdzić, czy konfiguracja PHP oci8 jest włączona, możesz wrócić do wiersza poleceń systemu Windows i uruchomić:php --ri oci8; odpowiedź powinna być podobna do poniższej:
C:\Users\flex>php --ri oci8
OCI8 Support => enabled
OCI8 DTrace Support => disabled
OCI8 Version => 2.1.1
Revision => $Id: 86f22a208f89dcd5b305e82929a7429683968b11 $
Oracle Run-time Client Library Version => 11.2.0.4.0
Oracle Compile-time Instant Client Version => 10.2
Directive => Local Value => Master Value
oci8.max_persistent => -1 => -1
oci8.persistent_timeout => -1 => -1
oci8.ping_interval => 60 => 60
oci8.privileged_connect => Off => Off
oci8.statement_cache_size => 20 => 20
oci8.default_prefetch => 100 => 100
oci8.old_oci_close_semantics => Off => Off
oci8.events => Off => Off
Statistics =>
Active Persistent Connections => 0
Active Connections => 0
Alternatywnie możesz utworzyć plik PHP za pomocą jako treść, a następnie otwórz go w przeglądarce i wyszukaj wystąpienia oci8; tam również powinno być włączone.