fopen
| 解説 | ファイルまたはURLを開く |
|---|---|
| 書式 | resource fopen( string filename , string mode [, int use_include_path ] ) |
resource fopen( string ファイル名 , string モード [, int インクルードパス ] ) |
|
| 引数 |
filename
ファイル名
|
mode
ファイルを開くときのモード
|
|
use_include_path
インクルードパスを検索するかどうか
|
|
| 返値 | ファイルポインタ/FALSE(開くのを失敗した時) |
fopen()は指定したファイル、またはURLを開きます。
成功した場合はファイルポインタを返します。失敗した場合はFALSEを返し、E_WARNINGレベルでエラーを発します。エラー制御演算子(@)が使用可能です。通常はこのファイルポインタを用いて、ファイル操作を行います。
filenameファイル名開きたいファイルをパスでを指定します。
modeモードファイルを開くモードを指定します。指定できる値は後述します。
use_include_pathインクルードパスインクルードパスを検索するかどうかのオプションで省略可能です。検索する場合はTRUEもしくは1を指定します。省略した場合は0またはFALSEが指定されたとみなし検索しません。
参考関数
fopen()関数で使用可能なモード
fopen()で使用可能なモードです。
| モード | 説明 |
|---|---|
| r | 読み込みのみで開きます。ファイルポインタはファイルの先頭におきます。 |
| r+ | 読み書き可能な状態で開きます。ファイルポインタはファイルの先頭におきます。 |
| w | 書き込みのみで開きます。ファイルポインタはファイルの先頭におき、ファイルサイズをゼロにします。ファイルが存在しない場合は新規作成します。 |
| w+ | 読み書き可能な状態で開きます。ファイルポインタはファイルの先頭におき、ファイルサイズをゼロにします。ファイルが存在しない場合は新規作成します。 |
| a | 追加書き込みモードです。ファイルポインタをファイルの終端におき、ファイルが存在しない場合は新規作成します。 |
| a+ | 追加書き込み・読み取りが可能なモードです。ファイルポインタをファイルの終端におき、ファイルが存在しない場合は新規作成します。 |
| x | 書き込みのみで開きます。ファイルポインタはファイルの先頭におきます。ファイルが存在するとfopen関数は失敗し、E_WARNINGレベルのエラーを出力します。ファイルが存在しない場合は新規作成します。 |
| x+ | 読み込み・書き込みが可能なモードです。ファイルポインタはファイルの先頭におきます。ファイルが存在するとfopen関数は失敗し、E_WARNINGレベルのエラーを出力します。ファイルが存在しない場合は新規作成します。 |
Windows環境でバイナリファイルを開く場合には、モードに'b'または't'を追加します。't' は\nを\r\nに変換します。'b'は強制的にバイナリモードにします。このモードは第2引数の最後に追加します。
- $fp = fopen('filename', 'r+b');
Windows環境で、ファイルパスを指定する際はバックスラッシュ\の代わりにスラッシュ/を用いるか、バックスラッシュをエスケープします。
- $fp = fopen("c:\\foldername\\filename", "r");
サンプルスクリプト
簡単な利用例
- $fp = fopen("sample.html", "r+");
- $fp = fopen('c:\foldername\testfile.gif', "wb");
- $fp = fopen("http://www.jp2.php.net/", "r");
ファイルやURLを開くサンプルです。開いた後は$fpを使っていろいろな操作をします。
ファイルの内容をすべて出力
- $fp = @fopen("test.php", "r");
- while( ! feof( $fp ) ){
- echo fgets( $fp, 9182 ) . "<br>";
- }
- fclose($fp);





