ホームページ > バックエンド開発 > PHPチュートリアル > PHPファイル読み込み機能の応用例、_PHPチュートリアル

PHPファイル読み込み機能の応用例、_PHPチュートリアル

WBOY
リリース: 2016-07-13 09:54:34
オリジナル
734 人が閲覧しました

PHP ファイル読み取り関数の応用例、

PHP ファイル読み取り操作には、ファイル書き込み操作よりも多くの PHP ファイル操作関数が含まれます。これらの関数はコード例で詳しく紹介されます。

テキスト ファイルに保存されたデータの読み取りと一部のファイル操作関数に含まれる主な 3 つの手順は次のとおりです。

1. ファイルを開きます(ファイル操作関数:fopen)

2. ファイルデータの読み込み(ファイル操作関数:fgets、file、readfile、feofなど)
3. ファイルを閉じる(ファイル操作関数:fclose)

以下では、PHP ファイルの読み取りおよび書き込み操作コードの例を使用して、ファイル読み取りメソッドの具体的なアプリケーションを説明します。この例では、さまざまな PHP ファイル読み取り操作関数を呼び出してテキスト ファイル内のデータを読み取ることで、さらに詳しく説明します。 PHP ファイルの読み込み操作 PHP Web サイト開発に合理的に適用するための機能の理解。テキスト ファイルに書き込まれるデータは、PHP ファイルの読み取りおよび書き込み操作に関するファイル書き込みチュートリアルから取得されます。fopen 関数のファイル読み取りおよび書き込みモードについては、この記事も参照してください。

PHPファイル読み込みオペレーションコード例

リーリー

注: 上記の例では、$readFun に値を割り当てることで、さまざまな PHP ファイル読み取りメソッドを呼び出すことができます。関連する PHP ファイル読み取り操作関数には、fgets、fgetss、fgetcsv、readfile、fpassthru、file、fgetc およびその他の関数が含まれます。

PHPファイル読み込み操作関数fgets、fgetss、fgetcsvの違い

コード例では、デフォルトの PHP ファイル読み込み操作関数は fgets です。 fgetss 関数と fgetcsv 関数の機能は fgets と同じで、どちらもファイルを 1 行ずつファイルの最後まで読み込みます。ここでは、読み込むテキスト ファイルのデータ長を 100 に設定します。つまり、最大読み出し長は 99 (100-1) になります。このように、改行文字 n またはファイルの終わり文字 EOF に遭遇すると、次のようになります。または 99 がファイルから読み取られます。バイトに達したらデータの読み取りを停止します。 fgets 関数は、ファイルから読み取られたデータを文字列型で返します。

fgetss 関数は、PHP および HTML タグを削除し、3 番目のパラメーターを渡すことで不要なデータをフィルタリングできます。これにより、たとえば、ユーザーの入力データをゲストブックでフィルタリングできます。 fgetss 関数のプロトタイプは以下の通りです:

string fgetss(resource fp,int length, string[optional] allowed_tags)

allowable_tags パラメーターはオプションです。この例では、html、body、および h1 タグを含むテキスト行を、leapsoulcn.txt ファイルに事前に記述し、コード内で h1 タグのみが表示されるように設定しました。


fgetcsv 関数は、fgets の別の変形です。違いは、テキスト ファイルに書き込まれたデータに区切り文字が使用されている場合、fgetcsv を使用して 1 行を複数の行に分解できるという点です。プロトタイプは関数です。は次のとおりです:


配列 fgetcsv(リソース fp,int 長さ,文字列[オプション]区切り文字,文字列[オプション]エンクロージャ)

delimiter はオプションです。以前にファイルに書き込むデータに t を使用したため、この例では、ファイル読み取り関数 fgetcsv で t を区切り文字として使用し、 fgetcsv によって返された配列構造を print_r を通じて出力しました。


3つのPHPファイル読み込み操作関数fgets、fgetss、fgetcsvの共通点は、fopen関数を使って読み込んだファイルを事前にオープンし、同時にfeof関数を使ってファイルポインタが到達したかどうかを判定する必要があることです。 fclose 関数はファイルを閉じた後、必ず使用してください。


fgetc: 1 文字を読み取ります

コード例では、文字を 1 つずつ読み取るために fgetc 関数を使用しています。n 個の文字が見つかった場合、それらの文字は HTML ファイル内の br タグに変換され、特定の改行効果が表示されます。もちろん、この機能の効率は比較的低いため、使用はお勧めできません。

PHPファイル読み込み操作関数readfile、fpassthru、fileの違い

3つの関数に共通するのは、一度に1行や1文字を読み取るのではなく、ファイル全体を一度に読み取ることができることです。違いは次のとおりです:

readfile 関数はファイルを開き、ファイルの内容を返し、それをブラウザに直接出力します。 fopen 関数と同様に、関数の戻り値はファイル内の合計文字数であり、readfile 関数の 2 番目のパラメータはオプションです。 PHP は include_path でファイルを検索する必要があります。コード例では、echo ステートメントを使用して、読み取ったファイルの内容を出力するのではなく、読み取ったファイルの合計文字数を出力します。これは、readfile 関数によって自動的に出力されることを意味します。 readfile 関数のプロトタイプは次のとおりです:
int readfile(文字列ファイル名,int[オプション] use_include_path)

file 関数は、ファイルを読み取るもう 1 つの方法で、読み取ったファイルの内容を 1 行に 1 つの配列単位で送信します。ファイル関数のプロトタイプは次のとおりです:

配列ファイル(文字列ファイル名、ブール[オプション] use_include_path)

fpassthru()関数は、ファイルポインタにある残りのデータをすべて出力するために使用されます。つまり、ファイルポインタが先頭にない場合は、ファイルポインタの後のデータのみを出力します。この関数は、指定されたファイル ポインターを現在位置から EOF まで読み取り、結果を出力バッファーに書き込みます。戻り値は出力された文字数です。エラーが発生した場合はFALSEが返されます。 readfile() 関数と比較して、 fpassthru() 関数は最初にファイルを開き、データを読み取った後にファイルを閉じる必要があります。


  fread与file_exists、filesize函数

  fread函数也是读取文件的一种方法,其可以从文件中读取任意字节,要么满足length要么读到文件末尾。read函数原型如下:

string fread(resource fp,int length)

  在用到fread函数时,当你想读取文件全部数据,又不知道文件数据长度时,filesize函数可以解决这个问题,即
 

<&#63;
  @$fp = fopen("leapsoulcn.txt","r") or die("system error");
  echo fread($fp,filesize("leapsoulcn.txt"));
  fclose($fp);
&#63;>
ログイン後にコピー

在PHP文件读写操作教程中我们还没有使用过file_exists函数,通常在PHP网站开发中,出于各种考虑,有时当文件不存在时,我们并不像创建新文件,这时我们就需要在使用fopen函数前使用file_exists函数判断文件是否存在,即

<&#63;
if(file_exists("leapsoulcn.txt"))
{
  //进行PHP文件读写操作
}
&#63;>
ログイン後にコピー

以上为大家介绍了PHP读取文件内容的各种方法,通过合理应用PHP文件读写操作函数,可以实现简单的留言本、网站log记录等功能。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/996229.htmlTechArticlePHP文件读取功能的应用实例, PHP文件读取操作相对于文件写入操作涉及更多的PHP文件操作函数,在代码实例中会详细介绍这些函数。 读取...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート