-2

GET リクエストを介してファイル名を php スクリプトに渡したいと思います。私は次のコードを考えていたでしょう:

<?php

$myFile = $_GET['filename'];

$file = fopen($myFile, "r");

while (!feof($myFile))
{
   $currentLine = fgets($myFile);
   print $currentLine;
}

?>

動作しますが、そうではありません。次のメッセージが無限に繰り返されます。

Warning: feof() expects parameter 1 to be resource, string given in /Library/WebServer/Documents/maps/getFile.php on line 7

Warning: fgets() expects parameter 1 to be resource, string given in /Library/WebServer/Documents/maps/getFile.php on line 9

open ループと while ループを IF ステートメントでラップして、存在しないファイルが開かれる可能性を防ぐ必要があることはわかっていますが、送信しているファイルは存在します。GETリクエストでこれを行うことはできないようですか?

4

2 に答える 2

1

および$fileのパラメータとして使用する必要があります。 ファイルハンドルリソースを表します。ファイル名を含む単なる文字列です。feof()fgets()$file$myFile

于 2012-12-14T00:42:32.407 に答える
0

試す

while (!feof($file ))
{
   $currentLine = fgets($file );
   print $currentLine;
}
于 2012-12-14T00:45:03.890 に答える