8

私はこれを試しました:

    <?php
$fileip = fopen("test.txt","r");

?>

これにより、読み取り専用のムードでファイルが開かれるはずですが、test.txtファイルがindex.php(メインプロジェクトフォルダー)と同じフォルダーにあるわけではありません。

ファイルが開かない

そして私がエコーを置くとき:

echo $fileip;

戻ってきた

リソースID#3

4

6 に答える 6

15

ファイルは正常に開きました。ファイル自体の内容ではなく、ファイルポインタであるため、そのようにエコーすることはできません。fread()実際のコンテンツを読むにはを使用する必要があります。さらにfile_get_contents()、コンテンツをすぐに取得するを使用することをお勧めします。

あなたのやり方でそれをする:

$handle = fopen("test.txt", "r");
$fileip = fread($handle, filesize($filename));
fclose($handle);

echo $fileip;

または、を使用してfile_get_contents()

$fileip = file_get_contents("test.txt");

echo $fileip;
于 2010-03-09T11:30:39.753 に答える
3

php.netから:

成功した場合はファイルポインタリソースを返し、エラーの場合はFALSEを返します。

が返されたので、resourceファイルは正常に開かれました。ファイルに対して、などの操作をさらに行う必要がありfwriteます。したがって、エラーは発生しません。ファイルは操作対象になります。

于 2010-03-09T11:29:11.680 に答える
2

fopen呼び出しの結果としてリソースIDを取得した場合、失敗するとFALSEが返されるため、成功しました。では、ファイルが実際に開いていることを疑う理由は何でしょうか。

詳細については、 http://www.php.net/fopenを確認してください。

于 2010-03-09T11:29:56.793 に答える
2

ファイル自体ではなく、ファイルハンドルを開いただけです。

PHP5を使用している場合(これは本当に新しい開発に必要です)、代わりに$ fileip = file_get_contents( "test.txt")を使用して、このファイルの内容をバッファーに読み込むことができます。

于 2010-03-09T11:30:19.540 に答える
2

完全な例。

<?php
    $fileip = file_get_contents("test.txt");

    echo($fileip);
?>
于 2011-12-01T23:09:41.313 に答える
0

テキストファイルの内容を出力するには:

$fh   = fopen('myfile.txt', 'r');
$text = fread($fh, filesize('myfile.txt'));
echo $text;
于 2010-03-09T11:33:00.980 に答える