PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのfile_get_contents()関数とは?使い方とパラメータを徹底解説

PHPのfile_get_contents()関数は、ファイル全体を読み込んで1つの文字列として返す関数です。似た関数であるfile()関数がファイル全体を配列として読み込むのに対し、file_get_contents()関数はファイル全体を単一の文字列として取得できる点が大きな特徴です。

基本構文

file_get_contents(file_path, flags, context, start_offset, max_length)

パラメータの詳細

  • file_path: 読み込み対象となるファイルへのパスを指定します。

  • flags: 以下のフラグをバイナリOR演算子(|)で組み合わせて指定できます。

    • FILE_USE_INCLUDE_PATH: include_pathに設定されたディレクトリ内からファイル名を検索します。

    • FILE_TEXT: Unicodeセマンティクスが有効な場合、読み込んだデータのデフォルトエンコーディングはUTF-8になります。このフラグはFILE_BINARYと併用できません。

    • FILE_BINARY: ファイルをバイナリモードで読み込みます。これがデフォルトの動作であり、FILE_TEXTと併用することはできません。

  • context: stream_context_create()関数で作成したコンテキストリソースを指定します。

  • start_offset: ファイル内の読み込み開始位置を指定します。

  • max_length: 読み込むデータの最大長を指定します。省略した場合は、ファイルの終端(EOF)まで読み込みます。

戻り値

file_get_contents()関数は、読み込んだデータを文字列として返します。読み込みに失敗した場合はfalseを返します。

使用例①:テキストファイルの読み込み

たとえば、次のような内容の「info.txt」というファイルがあるとします。

The U.S. is a country of 50 states.

このファイルをfile_get_contents()関数で読み込むコードは以下の通りです。

<?php
    $info = file_get_contents('info.txt', FALSE, NULL, 0, 50);
    echo $info;
?>

出力結果

The U.S. is a country of 50 states.

使用例②:WebサイトのHTMLを取得する

file_get_contents()関数は、URLを指定することでWebサイトのページ内容も取得できます。次の例では、あるWebサイトのトップページのHTMLを読み込んで表示しています。

<?php
    $website = file_get_contents("https://www.qries.com");
    echo $website;
?>

出力結果

Sharing Knowledge

このように、file_get_contents()関数を使えば、ローカルファイルだけでなく外部のWebページの内容も簡単に文字列として取得できます。スクレイピングやAPIレスポンスの取得など、さまざまな場面で活用できる便利な関数です。

  1. PHPのfile()関数とは?使い方・パラメータ・戻り値をわかりやすく解説

    PHPのfile()関数は、指定したファイル全体を読み込み、その内容を行ごとに分割した配列として返す関数です。テキストファイルを簡単に扱いたい場合に便利な基本関数の一つです。構文file(file_path, flag, context)パラメータfile_path − 読み込みたいファイルへのパスを指定します。flag − 省略可能なパラメータで、以下の定数を1つ、または複数組み合わせて指定できます。FILE_USE_INCLUDE_PATH − include_path の中からファイルを検索します。FILE_IGNORE_NEW_LINES − 配列の各要素の末尾に改行文字を追加しません

  2. PHPのdelete()関数とは?使い方とサンプルコードをわかりやすく解説

    PHPのdelete()関数は、指定したファイルを削除するための関数です。削除したいファイルのパスをパラメータとして渡すことで、そのファイルをシステムから削除できます。 構文(Syntax) delete(file_path) パラメータ(Parameters) file_path: 削除したいファイルのパスを指定します。相対パス・絶対パスのどちらでも指定可能です。 戻り値(Return) delete()関数は、処理結果に応じて以下のブール値を返します。 true: ファイルの削除が成功した場合 false: ファイルの削除に失敗した場合(ファイルが存在しない、権限がないなど) 使用