PHPファイルの扱い
fopen() 関数は、PHP でファイルを開くために使用されます。
ファイルを開く
PHP には、ファイルを作成して開くために fopen() 関数が使用されます。 fopen() 関数を使用してファイルを開くときに、ファイルが存在しない場合は、ファイルの作成が試行され、リソースが返されます。 オープンに失敗した場合、関数は FALSE を返します。
構文
resource fopen (string $filename, string mode)
この関数の最初のパラメータには、開かれるファイルの名前が含まれており、2 番目のパラメータは、ファイルを開くために使用するモードを指定します。
<html> <body> <?php $file=fopen("welcome.txt","r"); ?> </body> </html>ファイルは次のモードで開くことができます:
モード説明
r 読み取り専用。ファイルの先頭から開始します。
<html> <body> <?php $file=fopen("welcome.txt","r") or exit("Unable to open file!"); // 不能打开指定文件的错误信息: Unable to open file ?> </body> </html>ファイルを閉じます fclose() 関数は、開いているファイルを閉じるために使用されます:
<?php $file = fopen("test.txt","r"); //执行一些代码 fclose($file); ?>
検出ファイルの終わり (EOF)
feof() 関数は、ファイルの終わり (EOF) に達したかどうかを検出します。
if (feof($file)) echo "End of file";
ファイルを一行ずつ読み込みます
fgets()関数は、ファイルから一行ずつファイルを読み込みます。
注: この関数を呼び出した後、ファイル ポインターは次の行に移動します。 構文string fgets( int handle [, int length] )
fgets() は、handle が指すファイルから行を読み取り、最大 length-1 バイトの長さの文字列を返します。 改行文字 (戻り値に含まれる)、EOF、または長さ 1 バイトの読み取り後に停止します。 長さが指定されていない場合、デフォルトは 1K、つまり 1024 バイトになります。
例
次の例は、ファイルの終わりまでファイルを 1 行ずつ読み取ります:
<?php $file = fopen("welcome.txt", "r") or exit("无法打开文件!"); // 读取文件每一行,直到文件结尾 while(!feof($file)) { echo fgets($file). "<br>"; } fclose($file); ?>
ファイルを 1 文字ずつ読み取ります
fgetc() 関数は、ファイルから 1 文字ずつファイルを読み取るために使用されます。 。
注: この関数を呼び出した後、ファイル ポインターは次の文字に移動します。
例
次の例では、ファイルの終わりまでファイルを 1 文字ずつ読み取ります:
<?php $file=fopen("welcome.txt","r") or exit("无法打开文件!"); while (!feof($file)) { echo fgetc($file); } fclose($file); ?>
ファイル全体を読み取ります
fread() 関数を使用してファイルを読み取ります (バイナリで安全に使用できます)ファイル)。
構文:
string fread( int handle, int length )
fread() は、ファイル ポインター ハンドルから最大 length バイトを読み取ります。ファイルの読み取りは、次のいずれかの条件が発生すると停止します。
最大 length バイトが読み取られたとき
ファイルの終わり (EOF) に到達したとき
(ネットワーク ストリームの場合) パケットが利用可能なとき
または (ユーザー空間ストリームを開いた後) 8192 バイトが読み取られました
ファイルから 10 バイト (スペースを含む) を読み取ります:
<?php $filename = "test.txt"; $fh = fopen($filename, "r"); echo fread($fh, "10"); fclose($fh); ?>
file_get_contents()
file_get_contents () 関数は、ファイル全体を文字列に変換し、成功した場合は文字列を返し、失敗した場合は FALSE を返します。
構文:
string file_get_contents( string filename [, int offset [, int maxlen]] )
パラメータの説明:
パラメータ文字列 file_get_ ファイル名
offset オプションで指定します読み取りの開始位置、デフォルトはファイルの開始位置です
maxlen オプションで、読み込むファイルの長さをバイト単位で指定します例:
<?php $filename = 'NoAlike.txt'; $filestring = file_get_contents($filename); echo $filestring; ?>
fwrite()
fwrite() 関数は次の目的で使用されます。文字列をファイルに書き込み、正常に書き込まれた文字数を返します。それ以外の場合は FALSE を返します。 構文: int fwrite( resource handle, string string [, int length] )
fwrite() string の内容をファイル ポインタ ハンドルに書き込みます。パラメータの説明: パラメータ
文字列に書き込まれるファイルポインタは、通常、
データ文字列を作成するFOPEN()関数によって作成されることを説明します。 length オプション。書き込まれる最大バイト数を指定します。 オプションのパラメータ length が指定されている場合、length バイトが書き込まれるか文字列が書き込まれると、書き込みは停止します。 例: プログラムと同じディレクトリで、file.txt ファイルの内容を実行します。 こんにちは! 上記の例では、length パラメーターが使用されている場合、最大長の文字列を書き込むことができます: echo fwrite($fh, $word, 4) // 出力: 4 ; file_put_contents() file_put_contents() 関数は、ファイルに文字列を書き込むために使用され、ファイルに正常に書き込まれたデータのバイト数を返し、失敗した場合は FALSE を返します。 構文: int file_put_contents (string filename, string data [, int flags [, resource context]] ) パラメータの説明: パラメータデータを書き込む ファイル名 flags オプションで、ファイルを開く/書き込む方法を指定します。可能な値: FILE_USE_INCLUDE_PATH: ファイル名のコピーの組み込みパスを確認します context オプション、Context はオプションのセットです。それを通じてテキスト属性を変更できます<?php
// 要写入的文件名字
$filename = 'file.txt';
// 写入的字符
$word = "你好!";
$fh = fopen($filename, "w");
echo fwrite($fh, $word); // 输出:6
fclose($fh);
?>
data 書き込むデータ書かれた。タイプは、文字列、配列 (ただし、多次元配列は不可)、またはストリーム リソースです。 <?php
echo file_put_contents("test.txt", "This is something.");
?>
18