ホームページ  >  記事  >  バックエンド開発  >  Foxit Reader 2.3 php fread の使用に関するヒント

Foxit Reader 2.3 php fread の使用に関するヒント

WBOY
WBOYオリジナル
2016-07-29 08:41:401034ブラウズ

説明
string fread ( int handle, int length )
fread() は、ファイル ポインタ ハンドルから最大 length バイトを読み取ります。この関数は、最大 length バイトの読み取り後、または EOF に達したとき、または (ネットワーク ストリームの場合) パケットが使用可能になったとき、または (ユーザー空間ストリームを開いた後) 8192 バイトの読み取りが完了したときに呼び出されます。どの条件が最初に発生したかに応じて異なります。
読み取った文字列を返すか、エラーが発生した場合は FALSE を返します。

コードをコピーします コードは次のとおりです:


// ファイルの内容を文字列に取得します
$filename = "/usr/local/something.txt"; handle = fopen( $filename, "r");
$contents = fread($handle, filesize ($filename));


警告
;ファイルとテキスト ファイル (Windows など) ファイルを開くときは、fopen() 関数の mode パラメータに「b」を追加します。




コードをコピーします

コードは次のとおりです:$filename = "c:\files\somepic.gif"

$handle = fopen($filename, "rb") ;
$contents = fread($handle, filesize ($filename));
fclose($handle)?>


読み取り時などリモート ファイルまたは Popen() および proc_open() によって返されたストリームからの読み取りは、パケットが利用可能になった後に停止します。これは、以下の例に示すように、データを収集して大きなチャンクにマージする必要があることを意味します。


コードをコピーします

コードは次のとおりです:

// PHP 5以降の場合 $handle = fopen("http://www.example.com/", " rb" );

$contents = stream_get_contents($handle);

fclose($handle);
?>
$handle = fopen ("http://www.example.com/", " rb" );
$contents = "";
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
?>


注: ファイルの内容を文字列に読み込むだけの場合は、上記のコードよりもパフォーマンスがはるかに優れた file_get_contents() を使用してください。
追加:
file_get_contents
(PHP 4 >= 4.3.0, PHP 5)

file_get_contents -- ファイル全体を文字列に読み取ります
Description
string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] )
file_get_contents() がファイルを文字列に読み取る点を除いて、 file() と同じです。長さ maxlen の内容は、offset パラメーターで指定された位置から読み取られます。失敗すると、file_get_contents() は FALSE を返します。
file_get_contents() 関数は、ファイルの内容を文字列に読み取るための推奨される方法です。オペレーティング システムがメモリ マッピング テクノロジをサポートしている場合は、パフォーマンスを向上させるためにメモリ マッピング テクノロジも使用されます。
上記では、foxit Reader 2.3 の内容を含め、PHP fread を使用する際のヒントを紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。