[PHP-users 20070]Windows環境でのPhrameの使用について

荻原 宣之 ogihara @ itup.co.jp
2004年 1月 27日 (火) 19:16:19 JST


こんにちは、荻原です。

現在、PhrameをWindows環境で使用しようとしているのですが、
サンプル「phrame_examples」の「hello」を動かしてみると、
「cannot open file」というエラーが出てしまいました。
調べてみるとxslt_process関数のXMLファイルとXSLTファイルの
指定が、絶対パスでなければならないことが解ったので、
「hello」フォルダ直下の「index.php」ファイルの27行目の後に、

$xsl = str_replace('\\', '/', dirname(__FILE__)) . '/' . $xsl;

と記述して絶対パスを指定するようにしたのですが、今度は
「not well-formed」と言われてしまいました。Well-Formedの規則
に引っかかっているようですが、調べていくうちに、XMLファイル
とXSLTファイルの絶対パスにドライブ文字が要らないことが
わかり、さらに上記の追記の後に、

$xsl = substr($xsl, 2);

を追記してドライブ文字列以外を取得するように変更しました。
しかし、またも「cannot open file」というエラーが出てしまいました。
エラー内容をよく見ると、XMLファイルとXSLTファイルの指定が
自動的にCドライブになってしまっており、私の環境ではPHPファイル
はDドライブに置いている為、ファイルが無いと怒られていました。
試しに、Cドライブのファイルが無いと言われた場所に、フォルダを
作りXMLファイルとXSLTファイルを置いてみるとうまく動作しました。

xslt_process関数は、Windows環境の場合ドライブの指定は出来る
のでしょうか。また、なぜCドライブと認識してしまうのでしょうか。
ちなみにApacheとPHPはCドライブにインストールしています。

下記が動作環境です。


■Windowsのバージョン
Windows2000 SP4

■Apacheのバージョン
2.0.44

■PHPのバージョン
4.3.2

■Phrameのバージョン
2.0

■Phrameのサンプルのバージョン
2.0


以上、お解りの方がいらっしゃいましたら、どうそ宜しくお願いします。



PHP-users メーリングリストの案内