Windows 環境の PHP 5.2.x + PDO_OCI で Oracle データベース接続に失敗する場合

2 つの PDO エラーが出たので書き記しておく。

ORA-06401: NETCMN: ドライバの指定文字が無効です。 (ext\pdo_oci\oci_driver.c:581)

Oracle 関連のプロダクトが全くインストールされていない PC で
PHP + PDO_OCI をセットアップする場合は、
環境変数 Path に Oracle Instant Client
ディレクトリパスを追加し、PC を再起動することで
php_pdo_oci.dll から oci.dll を参照するようにする。

※再起動しないと環境変数が反映されない場合がある

既に Oracle 関連のプロダクトがインストールされている場合、
Oracle Instant Client 以外の oci.dll を参照してしまう
ケースがあるため、必要が無ければそれらのディレクトリパスを
環境変数 Path から省く。

ORA-12705: Cannot access NLS data files or invalid environment specified (ext\pdo_oci\oci_driver.c:632)

NLS_LANG が正しく設定されていない場合に発生する。
環境変数 NLS_LANG に Japanese_Japan.AL32UTF8 をセット。
レジストリ \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE の NLS_LANG (文字列) に
Japanese_Japan.AL32UTF8 をセット。
Apache を再起動する。

いやー Oracle ってホントーにめんどくさいものですね。