データベースには MySQL ではなく、Oracle を使用します。
XAMPP と Oracle のバージョンはそれぞれ以下のとおりです。
- XAMPP for Windows 1.7.3
- Oracle Database 11g Release 11.1.0.7.0
1.Oracle Instant Client インストール
PHP から Oracle への接続には OCI(Oracle Call Interface)を利用しますが、そのためには Oracle Instant Client をインストールする必要があります。
(Oracle Database がインストールされているだけではだめなようです。)
ということで、OTN から Instant Client Package - Basic ( instantclient-basic-win32-11.1.0.7.0.zip )をダウンロードし、ORACLE_HOME 直下(ここでは、C:\app\oracle\product\11.1.0\db_1\instantclient_11_1)に展開します。
2.システム環境変数の設定
Oracle Instant Client へのパスを通すために、システム環境変数 PATH に Oracle Instant Client をインストールしたパスを追加します。
PATH=C:\app\oracle\product\11.1.0\db_1\instantclient_11_1;~さらに、
NLS_LANG=Japanese_Japan.AL32UTF8も設定します。
3.php.ini の設定
PHP のインストールディレクトリ(ここでは、C:\xampp\php)にある php.ini に以下の設定を追加します。
[PHP] default_charset = "UTF-8" extension=php_oci8.dll [mbstring] mbstring.internal_encoding = UTF-8 mbstring.http_output = UTF-8
4.設定確認
1) XAMPP Control Panel から Apache を起動(Start)します。
2) XAMPP の管理画面(http://localhost/xampp/)にアクセスして、サイドバーから"php_info()"を選択します。
3) PHP の設定情報が表示されるので、以下の事項を確認します。
- 環境変数 NLS_LANG が正しくセットされている。
- 環境変数 PATH が正しくセットされている。
- oci8 の設定情報が正しく表示されている。
5.動作確認
1) Oracle に接続する簡単なスクリプトを作成します。
check_oracle.php
<?php $con = oci_connect( 'scott', 'tiger', '//' . 'localhost' . ':' . '1521' . '/' . 'orcl' ); $stmt = oci_parse( $con, "SELECT SYSDATE FROM DUAL" ); oci_execute( $stmt ); $row = oci_fetch_array( $stmt ); print $row['SYSDATE']; oci_close( $con );
2) XAMPP の Apache の DocumentRoot(ここでは、C:\xampp\htdocs)上に作成したスクリプトファイルを置きます。
3) Web ブラウザから上記のスクリプトファイル(http://localhost/check_oracle.php)にアクセスし、画面に結果が表示されれば OK です。