XAMPP+Oracle+EclipseのPHP開発環境構築

Pocket

 

Facebookアプリを作って遊ぼうと思い立ち、PHPの開発環境を作ることにした。
DBは、勝手知ったるOracleを使ってみる。

OSはWindows 7 Enterprise SP1(64bit)を使って環境構築したので、その時のメモ。
※Oracleは構築済みの環境を利用。キャラクタセットはAL32UTF8。
 

1、Pleiadesをダウンロード

http://mergedoc.sourceforge.jp/index.html#/pleiades_distros3.7.html

pleiades-e3.7-php-jre_20120225.zipをダウンロードし、解凍。
今回はD:\Javaに展開。
 

2、XAMPPをセットアップ

D:\Java\xamppディレクトリ配下のsetup_xampp.batを実行。
D:\Java\xampp\apache\confのhttpd.confを編集。ServerRootを設定。


#ServerRoot "D:/Java/xampp/apache"
ServerRoot "D:\Java\xampp\apache" ←追記

 

3、Oracle Instant Clientをダウンロード

http://www.oracle.com/technetwork/jp/topics/winsoft-087812-ja.html

32bit版をダウンロードし、展開。今回はD:\Java\instantclient_11_2に展開。

4、php.iniを編集

D:\Java\xampp\php\php.iniを編集。
キャラクタセットを追記。

default_charset = "UTF-8"

extension_dirを以下に変更。

extension_dir = "D:\Java\xampp\php\ext"

php_oci8.dll先頭のコメントアウト解除(「;」を削除)

extension=php_oci8.dll
 

5、OSの環境変数を設定

コントロールパネル→システムの左ペインにて、システムの詳細設定をクリック。
詳細設定タブ下部、環境変数をクリック。
システム環境変数に変数名 NLS_LANG 、値 Japanese_Japan.AL32UTF8 を追加。
変数名 Path の値の先頭に、Oracle Instant Clientのディレクトリを追記。(今回は D:\Java\instantclient_11_2; )

OSを再起動 ←ここ重要
 

6、Apacheを起動

D:\Java\xampp\xampp-control.exeを実行。
XAMPP Control Panel Applicationにて、ApacheをStart。
ブラウザでhttp://localhost/にアクセス。XAMPPのページが表示されることを確認。


 

7、PHPのサンプルアプリを作成

D:\Java\eclipse\eclipse.exeを実行。
ファイル→新規→PHPプロジェクトにて、プロジェクト名はphpにする。
phpプロジェクトにて、ファイル→新規→PHPファイルを作成、ファイル名はdbaccess.phpにする。

Oracle DBのIPは192.168.1.100、サービス名はHOGEDB、キャラクタセットはAL32UTF8の場合。
スキーマ名はHR、パスワードはhogehogeの場合。

HRスキーマの作成は、ここを参照されたい。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Oracle DB接続テスト</title>
</head>
    <body>
    <h3>Oracle DB接続テスト</h3>
    <?php
    	//oci_connect('<スキーマ名>','<パスワード>','<DBサーバのIP>/<サービス名>','<キャラクタセット>');
		$connection = oci_connect('HR','hogehoge','192.168.1.100/HOGEDB','AL32UTF8');
		$sql = 'select * from employees';
		$statement = oci_parse($connection, $sql);
		oci_execute($statement);

		while($record = oci_fetch_array($statement)){
			print $record&#91;'LAST_NAME'&#93;." ".$record&#91;'FIRST_NAME'&#93;."<br>\n";
		}

		oci_free_statement($statement);
		oci_close($connection);
	?>
    </body>
</html>

dbaccess.phpを右クリックし、実行→PHP Webアプリケーション。
データが表示されることを確認。


 

Pocket

この記事はApache, Oracle, PHP, XAMPPに投稿されました. このパーマリンクをブックマークする。 コメントとトラックバックは現在受け付けていません。

関連記事