[PHP-users 19374]Re: PHP(win)によるファイル操作について

rso gamba rso_gambal @ yahoo.co.jp
2003年 12月 16日 (火) 20:36:22 JST


こんにちわ、rsoです。
先日、ファイル操作についてご相談させていただいたのですが
、
まだ、完全に解決していない状況です。

以下のようなソースを走らせて見たところ、
<?
set_time_limit(0) ;

define("DIR_PATH","C:\\hoge\\hoge\\") ; //<--この行を追
加すると何も表示されない。

$fe = function_exists("fopen") ;
if($fe){
	echo "関数fopen存在" ;
	$fp = fopen(DIR_PATH . "new.txt","w") ;
	if ($fp){
		echo "fopen成功" ;
		fputs($fp,"test") ;
		fclose($fp) ;
	}else {
		echo "fopen失敗" ;
	}
}else{
	echo "関数fopen非存在" ;
}

if(file_exists(DIR_PATH . "new.txt")){
	echo "ファイル生成確認"  ;
}else{
	echo "ファイル生成失敗" ;
}
?>

ソースの構造上、何も表示されないことは無いはずなのですが
、
何も表示されないということはタイムオーバーしているのかな
と思い、set_time_limitを0に設定してみましたが状況は変わ
りません。

そこで、一行づつ消していったところ、defineの行を消すとフ
ァイルの生成が出来、メッセージも出力されました。
defineが原因なのかなと思い、DIR_PATHを$DIR_PATHに変えて
変数に代入する形をとってみましたが、この場合は何も出力さ
れず、ファイルも生成されませんでした。
成功するのはその行を完全に削除し、fopenやfile_existsの引
数を
直接stringで与えた時だけということです。

win2003serverでphpは4.2.2、
display_errorsはOn、error_reportingはE_ALL、safe_modeはoff
にしています。

また、明らかな文法エラーを含むコードでエラーの出力は確認
しています。
どなたか同じような現象に遭われたかたはいらっしゃいません
でしょうか?



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