PHPのfgets()関数を使用し開いているファイルを1行読み取ってみます。
fgets()関数は、開いているファイルから1行を取得することができます。なお、fgets()関数を使用し、取得が成功した場合はファイルから1行を読み込み、EOF(ファイルの終わり)かエラーの場合はFALSE(偽)を返します。
■基本的な構文
fgets(file, length)
fileは、1行を取得する開いているファイルを指定します。
lengthは、読み込むバイト数を指定します。オプションとなります。
■環境
・Windows10
・XAMPP 8.0.6
・PHP Version 8.0.6
■PHPのfgets()関数を使用し開いているファイルを1行読み取る
では、早速PHPのfgets()関数を使用し開いているファイルから1行を読み取ってみます。
■コード
<html lang="ja">
<head>
<title>fgets()関数を使用し開いているファイルを1行読み取る</title>
</head>
<body>
<?php
$file = fopen("test.txt","r");
echo fgets($file);
fclose($file);
?>
</body>
</html>
今回は、fileという変数を宣言し、その中でfopen()関数を使用し、ファイルを”r”(読み込み)モードで開いた状態で格納します。
その後、echo文とfgets()関数を使用します。fgets()関数の括弧内には、file変数を引数,パラメータとして渡し、読み込みモードの状態のファイルデータを、1行を取得し、出力します。
出力後、fclose()関数を使用し、読み込みモードの状態のファイルを閉じます。
なお、今回はファイルは「test.txt」というテキストファイルを用意しました。ファイルの中身には”2行”の文字列を格納しています。
■実行
では、このスクリプトを「get_oneline.php」という名前で保存し、実行させてみます。
実行させてみると、fgets()関数を使用したことで、開いた(読み込み)状態のファイルデータを取得し出力させることができました。今回指定したファイルには2行の文字列を格納していましたが、読み込むバイト数などは指定せずにfgets()関数を使用したため、1行だけ取得されました。
コメント