file_get_contents
 
  (PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
file_get_contents — ファイルの内容を全て文字列に読み込む
  
 
  説明
  
  
  
   file_get_contents()はファイルの内容を文字列に読み込む
   方法として好ましいものです。もしOSがサポートしていれば
   パフォーマンス向上のためにメモリマッピング技術が使用されます。
  
  注意: 
   
    空白のような特殊な文字を有する URI をオープンする場合には、
    urlencode() でその URI をエンコードする必要があります。
   
  
  
 
  パラメータ
  
   
    
     - filename
- 
      
       データを読み込みたいファイルの名前。
       
- use_include_path
- 
      注意: 
        
        定数 FILE_USE_INCLUDE_PATHを使用して インクルードパス
        から探すことができます。
        この定数を使うことは、強い型付け
        が有効になっている場合は不可能です。なぜなら、FILE_USE_INCLUDE_PATHが int だからです。trueを代わりに使いましょう。
 
 
- context
- 
      
       stream_context_create() で作成したコンテキストリソース。
       独自のコンテキストを使用する必要がない場合は、このパラメータに
       nullを指定します。
 
- offset
- 
      
       元のストリーム上で、読み込みを開始するオフセット位置。
       負のオフセットは、ストリームの末尾からのオフセットと解釈されます。
       
       リモートファイルに対するシーク (offset指定) はサポートしていません。
       オフセットが小さい場合はリモートファイルでのシークがうまくいくこともありますが、
       これはバッファリングされたストリーム上で動作しているだけのことです。
 
- length
- 
      
       読み込むデータの最大バイト数。
       デフォルトは、ファイル終端に達するまで読み込みます。
       このパラメータは、フィルタが処理した後のストリームに適用されることに注意しましょう。
       
 
 
  戻り値
  
   読み込んだデータを返します。失敗した場合に false を返します。
  
  警告この関数は論理値
false を返す可能性がありますが、false として評価される値を返す可能性もあります。
詳細については 論理値の
セクションを参照してください。この関数の返り値を調べるには
===演算子 を
使用してください。
 
  
 
  エラー / 例外
  
   filename が見つからない場合、length
   がゼロより小さい場合、あるいはストリーム内での指定した offset へのシークが失敗した場合に
   E_WARNING レベルのエラーが発生します。
  
  
   file_get_contents() 関数がディレクトリに対して呼び出されると、
   Windows では E_WARNING レベルのエラーが発生していました。
   PHP 7.4 以降では、Windows 以外のオペレーティングシステムでも同じ動きになっています。
  
  
 
 
  例
  
   
    例1 とあるウェブサイトのホームページのソースの取得と出力
    
<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>
     
    
   
    例2 include_path の検索
    
<?php
// 厳密な型検査が有効な場合。つまり、declare(strict_types=1) の場合
$file = file_get_contents('./people.txt', true);
// 厳密な型検査が有効でない場合
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>
     
    
   
    例3 ファイルの一部の読み込み
    
<?php
// 21 文字目から 14 文字ぶん読み込みます
$section = file_get_contents('./people.txt', FALSE, NULL, 20, 14);
var_dump($section);
?>
     
    
    
string(14) "lle Bjori Ro"
 
    
   
    例4 ストリームコンテキストの使用
    
<?php
// ストリームを作成します
$opts = [
  'http' => [
    'method' => "GET",
    'header' => "Accept-language: en\r\n" .
                "Cookie: foo=bar",
  ]
];
$context = stream_context_create($opts);
// 上で設定した HTTP ヘッダを使用してファイルをオープンします
$file = file_get_contents('http://www.example.com/', false, $context);
?>
     
    
  
  
 
 
  注意
  注意: この関数はバイナリデータに対応しています。
  
  警告IIS のような、いくつかの標準に
対応してない Web サーバーは、PHP に警告を発生させるような手順でデータを送信します。
このようなサーバーを使用する場合は、
error_reporting を警告を発生しないレベルまで小さくする必要があります。
PHP では、https:// ラッパーでストリームをオープンする際に
バグがある IIS サーバーソフトウエアを検出することができ、この警告を抑制することができます。
あなたが ssl:// ソケットを作成するために  fsockopen() を使用している場合、
自らこの警告を検出し、抑制する必要があります。