この記事では主に、php
でファイルを読み取る 2 つの方法、fread
と file_get_contents
について説明します。 2 人はファイルも読み取っていますが、2 人の類似点と相違点は何ですか。
1. 2 つの関数の構文:
fread()
fread ( resource $handle , int $length ) : string
$ handle : ファイル システム ポインター。通常は fopen()
によって作成される resource
(リソース)。
$length: ファイルのバイト長を読み取ります。
戻り値: $length 長さの文字列。
file_get_contents()
file_get_contents ( string $filename ,bool $include_path=false ,resource $context =? ,int $offset = -1 , int $maxlen = ? ) : string
$filename: 読み取るファイルの名前。
$include_path: include_path ( php.ini
内) 内のファイルを検索する必要がある場合は、このパラメータを「1」に設定してください。
$context: ファイルハンドルの環境を指定します。 context は、ストリームの動作を変更できるオプションのセットです。 null が使用された場合、それは無視されます。
$offset: 読み取りを開始するファイル内の位置を指定します。このパラメータは PHP 5.1 で追加されました。
$maxlen: 読み取るバイト数を指定します。
戻り値: 長さ $maxlen の文字列。
#2. 2 つの違い:
fread()
は次のようにする必要があります。ポインタを介して読み取られる コンテンツを取得するには、サイズに従ってコンテンツを読み取ることができます size
<?php //文件路径 $filename="./exit.txt"; //获取文件资源 $file = fopen($filename,'r'); //读取二进制文件时,需要将第二个参数设置成'rb' //获取文件内容 $file_info=fread($file,10); //打印文件内容 echo $file_info; //关闭文件资源 fclose($file); ?>
输出:php good b
file_get_contents ()
すべてのコンテンツを直接読み取ります
<?php //文件路径 $filename="./exit.txt"; echo file_get_contents($filename); ?>
输出:php good better Knowledge is power
fread()
コンテンツ全体を取得したい場合は、filesize()
関数を使用して、指定されたファイルのサイズを返す必要があります。ファイル。
$file_info=fread($file,filesize($filename));
推奨: 2021 PHP 面接の質問まとめ (コレクション)>>《php ビデオ チュートリアル》
以上がPHP でファイルを読み取るには、file_get_contents と fread の 2 つの方法があります (コード例付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。