phpファイルを読み込む
前のセクションでは、ファイル操作について説明しました。ファイルの読み取りは、最もよく使用される機(jī)能の 1 つです。
readfileはファイルを読み取ります
それでは、どうやってファイルを読み取るのでしょうか?まずは関數(shù)を?qū)W習(xí)しましょう。
int readfile (string $filename)
機(jī)能: ファイルパスを渡し、ファイルを出力します。
以下のコードでは、ファイル名または指定されたファイルパスが渡される限り、ファイルが読み取られます。
<?php //linux類的讀了方式 readfile("/home/paul/test.txt"); //windows類的讀取方式 readfile("c:\boot.ini"); ?>
注: 上記のコードの Windows スラッシュはスラッシュであり、一部の文字はエスケープされる場合があります。したがって、書くときはスラッシュを 2 つ書きます。
file_get_contentsでファイルを開きます
上記は単純にファイルを開いた直後の出力です ファイルを開いた後に変數(shù)に代入できる操作方法はありますか?
PHP は確かにこのメソッドを提供します。このメソッドは、PHP がファイルを開いてコンテンツを返す方法の 1 つです。関數(shù)を見てみましょう:
string file_get_contents ( string filename)
関數(shù): ファイルまたはファイル パスを渡し、ファイルを開きます。そしてファイルの內(nèi)容を返します。ファイルの內(nèi)容は文字列です。
<?php $filename = 'NoAlike.txt'; $filestring = file_get_contents($filename); echo $filestring; ?>
上記のコードはファイルを開き、ファイルの內(nèi)容を出力します。
これまでの知識に基づいてコードを拡張してみましょう。これまでの知識を活用してください。
<?php //假設(shè)我們有一個(gè)多行的文件叫NoAlike.txt,沒有的話你可以新建一個(gè)這個(gè)文件 $filename = 'NoAlike.txt'; //打開這個(gè)文件,將文件內(nèi)容賦值給$filestring $filestring = file_get_contents($filename); //因?yàn)槊恳恍杏幸粋€(gè)回車即\n,我用\n來把這個(gè)字符串切割成數(shù)組 $filearray = explode("\n", $filestring); //把切割成的數(shù)組,下標(biāo)賦值給$key,值賦值給$val,每次循環(huán)將$key加1。 while (list($key, $val) = each($filearray)) { ++$key; $val = trim($val); //用的單引號,單引號不解釋變量進(jìn)行了拼接而已 print 'Line' . $key .':'. $val.'<br />'; } ?>
上記では、これまでに學(xué)んだ知識を組み合わせました。
fopen、fread、および fclose 操作はファイルを読み取ります
ファイルを開く上記の file_get_contents メソッドは単純かつ粗雑です。以下の
resource fopen (string $filename, string mode)
string fread (resource $operation resource, int read length)
bool fclose (resource $operation resource)
上記を通ってみましょうリソースタイプの一般的な操作方法を説明します:
1. リソースを開きます
2. 関連する関數(shù)を使用して操作します
3. fopen関數(shù)の機(jī)能ファイルを開くには、2 つの主なパラメータがあります:
1. ファイルを開くためのパス
2. ファイルを開くモード
戻り値の型は、先ほど説明したリソースの型です。最初に前の基本タイプに遭遇したとき 到達(dá)するリソースタイプ。このリソース タイプでは、このリソースを操作するために他の関數(shù)が必要です。すべてのリソースは、開いたときに閉じる必要があります。 fread関數(shù) この関數(shù)の機(jī)能は、開いているファイルリソースを読み取ることです。指定された長さのファイル リソースを読み取り、その一部を読み取り、一部を後方に移動(dòng)します。ファイルの最後まで。 fclose関數(shù) fclose関數(shù)の機(jī)能はリソースを閉じることです。リソースは開いたり閉じたりします。 関數(shù)を理解すると、最後の 2 つの関數(shù)は比較的簡単です。 fopen 関數(shù)のモードは何ですか? fopen のモードは次のとおりです: これとは対照的に、「b」を使用してデータが変換されないようにバイナリ モードを強(qiáng)制することもできます。これらのフラグを使用するには、モード引數(shù)の最後の文字として「b」または「t」を使用します。 このコースを視聴した生徒はこちらも學(xué)んでいますモード 説明 r ファイルを読み取り専用で開きます。 mode ポインタはファイルヘッダを指します。 r+ 読み取り/書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントします。 w 書き込みモードで開き、ファイルポインタをファイルヘッダーにポイントし、ファイルサイズをゼロに切り詰めます。ファイルが存在しない場合は、ファイルの作成を試みます ファイルの書き込みをマスターする前に、まずファイルの読み取り方法を知る必要があります。 w+ 読み取り/書き込みモードで開き、ファイル ポインターをファイル ヘッダーにポイントし、ファイル サイズをゼロに切り詰めます。ファイルが存在しない場合は、書き込みモードでファイルを開き、ファイル ポインタをファイルの末尾に指定してください。ファイルが存在しない場合は、ファイルを作成し、ファイル ポインタをファイルの末尾に指定して読み取り/書き込みモードで開きます。ファイルが存在しない場合は、ファイル ポインタをファイル ヘッダーに指定して、ファイルを作成して書き込み用に開きます。ファイルが既に存在する場合、 fopen() 呼び出しは失敗し、FALSE を返し、E_WARNING レベルのエラー メッセージを生成します。ファイルが存在しない場合は、ファイルを作成し、ファイル ポインタをファイル ヘッダーにポイントして読み取り/書き込みモードで開きます。ファイルが既に存在する場合、 fopen() 呼び出しは失敗し、FALSE を返し、E_WARNING レベルのエラー メッセージを生成します。ファイルが存在しない場合は、作成してみます。次に、r モードのみを?qū)W習(xí)します。レッスンの最後に、書き込み時(shí)の他のモードについて説明します。 3.ファイルを閉じる1.ファイルを開く <?php
//你可以創(chuàng)建一個(gè)NoAlike.txt,以只讀模式打開
$fp = fopen('NoAlike.txt', "r");
//var_dump()操作一下$fp看看效果,輸出的是不是只有類型提示的是resource
var_dump($fp);
?>
2.ファイルを読む <?php
$fp = fopen('NoAlike.txt', "r");
//打開一個(gè)文件類型后,讀取長度
$contents = fread($fp, 1024);
?>
b<?php
$fp = fopen($filename, 'r');
$contents = fread($fp, 1024);
fclose($fp);
echo $contents;
?>
その他の注意事項(xiàng):ウィンドウ全般 n に切り替えるrn バイナリオープンモード 説明: 実験は肉眼では見ることができません。この機(jī)能だけは覚えておいてください。 Windows には、n を rn に透過的に変換するためのテキスト変換タグ ('t') が用意されています。
學(xué)び続ける
初級PHP 入門チュートリアル 1: 1 週間で PHP を?qū)Wぶ
初級PHP 入門ビデオチュートリアル 1 1 週間で PHP を?qū)Wぶ
初級XPointer チュートリアル
初級XML スキーマのチュートリアル
初級デザインパターン
初級正規(guī)表現(xiàn)マニュアル
初級ASP チュートリアル
初級CSS3最新版リファレンスマニュアル
初級AppML チュートリアル
初級VBScript チュートリアル
初級Bootstrap中國語マニュアル
初級React 中國語リファレンスマニュアル