sql >> Database >  >> RDS >> Oracle

Oproep naar ongedefinieerde functie oci_connect, php_oci8_12c.dll, windows 8.1, php5.6.6

Bewerken: Hmm. Als u dit op Windows 8 probeert, lijkt het erop dat dezelfde fout wordt gegenereerd als u hebt opgegeven. Ik ben momenteel bezig met onderzoek...

Mijn fout (ik had de verkeerde extension_dir ingeschakeld lijn). Het werkt in Win8 zoals hieronder beschreven.

De volgende stappen zouden alles moeten zijn wat u nodig hebt om OCI met PHP te laten werken (ik heb dit zojuist geverifieerd op een pas geïnstalleerde virtuele machine met Windows 2008 R2 Standard x64):

  • Download en extraheer PHP (ik gebruikte C:\php van php-5.6.7-nts-Win32-VC11-x86.zip ).
  • Download en extraheer InstantClient (ik gebruikte C:\instantclient_12_1 van instantclient-basic-nt-12.1.0.2.0.zip ).
  • Voeg bovenstaande paden toe aan het systeempad.
  • Kopieer c:\php\php.ini-production naar c:\php\php.ini .
  • in php.ini :
    • ingeschakelde regel extension_dir = "ext" .
    • ingeschakelde regel extension=php_oci8_12c.dll .
  • Installeer Microsoft Visual C++ 2010 Runtime (x86). Dit is nodig voor de OCI8-extensie.
  • Installeer Microsoft Visual C++ 2012 Runtime (x86). Dit is nodig voor PHP.

Op dit punt draait php --ri oci8 in een opdrachtprompt toont me de volgende uitvoer:

C:\>php --ri oci8

oci8

OCI8 Support => enabled
OCI8 DTrace Support => disabled
OCI8 Version => 2.0.9
Revision => $Id: f5a3ee1083d1ffa6adb5143efda6eafa210b8414 $
Oracle Run-time Client Library Version => 12.1.0.2.0
Oracle Compile-time Instant Client Version => 12.1

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.connection_class => no value => no value
oci8.events => Off => Off

Statistics =>
Active Persistent Connections => 0
Active Connections => 0

En controleren op de oci_connect functie:

C:\>php -r "var_dump(function_exists('oci_connect'));"
bool(true)


  1. Vloeiend NHibernate en PostgreSQL, SchemaMetadataUpdater.QuoteTableAndColumns - System.NotSupportedException:Opgegeven methode wordt niet ondersteund

  2. Hoe SQL Server-database migreren naar MySQL?

  3. Hoe BLOB- en CLOB-bestanden in MySQL in te voegen?

  4. Converteer maandnaam naar maandnummer in PostgreSQL