【PHP8.x】file_get_contents関数の使い方

作成日: 更新日:

file_get_contents関数は、指定されたファイルを文字列として読み込む関数です。この関数は、ローカルファイルだけでなく、HTTPやFTPなどのプロトコルを使用してリモートファイルの内容も取得できます。

具体的には、第一引数に読み込むファイルのパスまたはURLを指定します。第二引数には、ストリームコンテキストを指定できます。ストリームコンテキストは、タイムアウトの設定やHTTPヘッダーのカスタマイズなど、ファイルアクセス時のオプションを細かく制御するために使用されます。第三引数にオフセットを指定すると、ファイルの先頭から指定したバイト数だけスキップした位置から読み込みを開始できます。第四引数に最大長を指定すると、指定したバイト数だけ読み込みます。

file_get_contents関数は、成功した場合にファイルの内容を文字列として返し、失敗した場合にはFALSEを返します。ファイルが存在しない場合や、権限がないためにアクセスできない場合、ネットワークの問題などでファイルを取得できない場合などにFALSEが返される可能性があります。エラーが発生した場合は、エラーメッセージが発行されることもあります。

この関数は、ウェブサイトのコンテンツを取得したり、設定ファイルを読み込んだり、APIからのレスポンスを取得したりするなど、様々な場面で利用できます。ただし、リモートファイルの取得にはネットワークアクセスが発生するため、タイムアウトの設定やエラーハンドリングを適切に行うことが重要です。また、セキュリティ上のリスクを避けるために、信頼できないソースからのファイル取得には注意が必要です。

基本的な使い方

構文(syntax)

file_get_contents(string $filename, bool $use_include_path = false, ?resource $context = null, int $offset = 0, ?int $length = null): string|false

引数(parameters)

string $filename, bool $use_include_path = false, $context = null, int $offset = 0, ?int $length = null

  • string $filename: 読み込むファイルの名前またはURL
  • bool $use_include_path = false: include_path の中も検索するかどうかを示す真偽値
  • $context = null: ストリームコンテキストを指定するコンテキストリソース
  • int $offset = 0: ファイルの先頭から読み込みを開始するオフセット
  • ?int $length = null: 読み込むバイト数。null の場合はファイルの最後まで読み込む

戻り値(return)

string|false

指定されたファイルの内容を文字列として取得します。ファイルが開けなかったり、読み込めなかったりした場合は false を返します。

【PHP8.x】file_get_contents関数の使い方 | いっしー@Webエンジニア