Devido a vários erros de configuração e 3 dias perdidos enquanto procurava uma solução, mudei para desenvolver no servidor Linux e todos os problemas desapareceram.
O que eu encontrei:
- ambos
php_oci8.dll
ephp_oci8_11g.dll
dependem das bibliotecas do Oracle Instant Client- estas bibliotecas não contêm
oci_
funções (comooci_connect
), apenasociX
funções (comoociLogon
) o que é estranho...
- estas bibliotecas não contêm
- embora eu tenha certeza de ter baixado o Oracle Instant Client Basic e todas as extensões, não consegui me conectar a outro servidor Oracle devido ao charset desconhecido e o erro estava dizendo que estou usando apenas Lite cliente instantâneo...
- Tentei a versão de cliente instantâneo de 64 bits e 32 bits sem sucesso
- meu Apache é de 64 bits, o Windows é de 64 bits, PHP é de 32 bits, o servidor Oracle remoto é de 64 bits, o servidor Linux remoto é de 64 bits...
- tentei muitas configurações de ambiente (
ORA_HOME
,TNS_ADMIN
, ajustadoPATH
para olhar para a instalação instantânea do cliente) sem sucesso - tentei desinstalar o servidor Oracle XE local devido a uma possível interferência nas configurações do ambiente sem sucesso
- quase perdi a cabeça - sem sucesso...
Então, finalmente, no servidor Linux, não tenho problemas para me conectar ao servidor Oracle remoto. Em algum lugar (enquanto navegava em milhares de páginas relacionadas ao PHP-Oracle), encontrei uma informação de que "não se deve desenvolver aplicativos PHP conectando-se ao servidor Oracle no Windows" e deve-se manter o sistema UNIX ...
Então qualquer um enfrentando problemas semelhantes ou iguais - seja gentil e não perca seu tempo, instale um VirtualBox, execute o Linux nele e siga em frente!