ホームページ > バックエンド開発 > PHPの問題 > PHPでファイル全体のデータを1行ずつ配列に保存する方法

PHPでファイル全体のデータを1行ずつ配列に保存する方法

青灯夜游
リリース: 2023-03-11 22:30:01
オリジナル
3929 人が閲覧しました

前回の記事で、ファイル全体を一度に読み込む方法を紹介して紹介しましたが、この方法は読み取った内容を文字列に保存することができます。興味のある方は「方法」をクリックしてください。ファイルのすべてのデータを php" ビューの文字列に保存します。続いてファイル全体を一気に読み込む方法を紹介します。

前回の方法では、ファイルの内容をすべて一行で出力します。ファイルデータが少ない場合は問題ありませんが、ファイルデータが多すぎる場合は、例えば

PHPでファイル全体のデータを1行ずつ配列に保存する方法

file_get_contents() 関数を使用して出力を読み取ります:

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filestr = file_get_contents($file);
echo $filestr;
?>
ログイン後にコピー

出力結果は

PHPでファイル全体のデータを1行ずつ配列に保存する方法

次のようになります。出力内容が読みにくいことがわかりました。では、ファイルの内容全体を 1 行ずつ出力するにはどうすればよいでしょうか?配列を使用できます。

ファイル全体を一度に読み取り、データを 1 行ずつ配列に保存できます。データの各行は配列要素に対応します。

次のコードを見てみましょう:

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filearr = file($file,FILE_IGNORE_NEW_LINES);
var_dump($filearr);
?>
ログイン後にコピー

出力結果:

PHPでファイル全体のデータを1行ずつ配列に保存する方法

読みやすいか、そしてコンテンツ全体を読み取る必要があるが、当面は 1 行のデータのみが必要な場合は、配列名[添え字] の形式を使用して、指定した行のデータを取得できます。たとえば、データの 3 行目が必要な場合は、次のようになります。

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filearr = file($file,FILE_IGNORE_NEW_LINES);
echo $filearr[2];  //数组下标是从0开始的
?>
ログイン後にコピー

出力結果:

PHPでファイル全体のデータを1行ずつ配列に保存する方法

キーを見てみましょう。 file() 内の関数。

file($filename,$flags,$context)この関数は、1 つの必須パラメータ $filename (読み取るファイル) と 2 つのオプションのパラメータ ## を受け入れます。 #$flags および $context (ファイル ハンドルの環境)。

ただし、通常、

$flags パラメータは設定されたままで、次の定数の 1 つ以上を指定できます:

  • #FILE_USE_INCLUDE_PATH: include_path (php.ini 内) 内のファイルを検索します。デフォルトは FALSE です。必要に応じて、パラメーター値を「1」に設定します。

  • FILE_IGNORE_NEW_LINES: 配列の各要素の末尾に改行文字を追加しないでください。

  • FILE_SKIP_EMPTY_LINES: 空行をスキップします。

たとえば、上記の例で、「FILE_IGNORE_NEW_LINES」を省略すると、出力は次のようになります。ファイルに空の行が含まれている場合:

PHPでファイル全体のデータを1行ずつ配列に保存する方法#上記の例のコードを使用してファイルを読み取ると、出力結果は次のようになります:

PHPでファイル全体のデータを1行ずつ配列に保存する方法

「FILE_SKIP_EMPTY_LINES」を設定すると、空行をスキップして次のデータ行を読み取ることができます。

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$file = &#39;test.txt&#39;;
$filearr = file($file,FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES);
var_dump($filearr);
?>
ログイン後にコピー

出力結果は次のとおりです:

PHPでファイル全体のデータを1行ずつ配列に保存する方法

$flags

パラメータ 複数の定数値を設定する場合は、

を使用する必要があります。 |

分離されました。 PHPでファイル全体のデータを1行ずつ配列に保存する方法

わかりました。これですべてです。他に知りたいことがある場合は、これをクリックしてください。 → →

PHP ファイルの基本操作## おすすめ:

PHP 面接質問まとめ (集)

》《php ビデオ チュートリアル

以上がPHPでファイル全体のデータを1行ずつ配列に保存する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート