PHPのfile関数を利用してファイルを読み込む方法を現役エンジニアが解説【初心者向け】
初心者向けにPHPのfile関数を利用してファイルを読み込む方法について現役エンジニアが解説しています。file関数とは、PHPの標準関数でファイルを読み込み行ごとに配列にして返す関数です。PHPのfile関数の書き方や使い方、引数のフラグの指定方法などについて解説します。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
今回は、PHPのfile関数を利用してファイルを読み込む方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
PHPについてそもそもよく分からないという方は、PHPとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプ、PHP/Laravel講座の内容をもとに紹介しています。
今回は、PHPに関する内容だね!
どういう内容でしょうか?
PHPのfile関数を利用してファイルを読み込む方法について詳しく説明していくね!
お願いします!
この記事ではPHPのfile関数を利用してファイルを読み込む方法について解説します。
目次
file関数とは
file関数は、PHPの標準関数でファイルを読み込み行ごとに配列にして返す関数です。
ファイル処理の際に使われる関数になります。
[PR] PHPを学んで未経験からWebエンジニアを目指す方法とは
file関数を利用してファイルを読み込む方法
file関数を利用してファイルを読み込ますには以下のように記述します
file(ファイル名[, フラグ]);
第1引数に読み込みたいファイル名を設定します。第2引数は任意ですが以下の値を設定できます。
フラグ名(定数) | 機能 |
---|---|
FILE_IGNORE_NEW_LINES | 配列の各要素の最後に改行文字が含まれない |
FILE_USE_INCLUDE_PATH | include_pathのファイルを探す |
FILE_SKIP_EMPTY_LINES | 空行を配列の要素として読み込まない |
もし設定したファイル名の読み込みに失敗した場合は、FALSEを返します。
実際に書いてみよう
では実際にfile関数を使ってファイルを読み込んでみましょう
ソースコード
test.txt
りんご バナナ みかん ぶどう 桃
test.php
<?php var_dump(file("test.txt")); echo "<br/>"; var_dump(file("test.txt", FILE_IGNORE_NEW_LINES)); echo "<br/>"; var_dump(file("test.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES));
実行結果
array(6) { [0]=> string(10) "りんご " [1]=> string(10) "バナナ " [2]=> string(10) "みかん " [3]=> string(1) " " [4]=> string(10) "ぶどう " [5]=> string(3) "桃" } array(6) { [0]=> string(9) "りんご" [1]=> string(9) "バナナ" [2]=> string(9) "みかん" [3]=> string(0) "" [4]=> string(9) "ぶどう" [5]=> string(3) "桃" } array(6) { [0]=> string(10) "りんご " [1]=> string(10) "バナナ " [2]=> string(10) "みかん " [3]=> string(1) " " [4]=> string(10) "ぶどう " [5]=> string(3) "桃" }
ファイルの中の行ごとに配列に格納されていることが確認できます。またフラグを設定することで空白行を取り除くこともできます。
まとめ
この記事ではPHPのfile関数を利用してファイルを読み込む方法について解説しました。
file関数はPHPでファイル操作をする際に非常によく使われる関数です。使い方を理解しておきましょう。
筆者プロフィール
メンターSさん
システムエンジニアとしてこれまで行政システムや医療用システムの保守、開発に携わりました。 JavaやPython、PHP、Kotlinなど様々な言語での開発経験があります。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、PHPやフレームワークのLaravelを使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。