PHP - よく使う関数 - ファイルシステム - 出力


 クラウディア


1. 概要
2. file_put_contents データをファイルに書き込む
3. fopen、flock、fwrite、fclose
3. 参考サイト

1. 概要

 本ページでは、ファイルへの出力に関する関数についてメモします。

2. file_put_contents データをファイルに書き込む

 下記の形式で、データをファイルへ出力します。

file_put_contents
(
    string $filename,			// 出力先のファイルパス
    mixed $data,				// 書き込むデータ
    int $flags = 0,				// フラグ(※)
    ?resource $context = null	// stream_context_create() で作成したコンテキストリソース?
): int|false
 戻り値は、「int」または「false」を返します。  「int」時は、書き込んだバイト数。  「false」時は、書き込み失敗。  ※ フラグの値は、以下の意味を持ちます(「|」で連結可)。
意      味 備考
FILE_USE_INCLUDE_PATH filename をインクルードディレクトリから探します
FILE_APPEND filename がすでに存在する場合に、 データをファイルに上書きするするのではなく追記
LOCK_EX 書き込み処理中に、ファイルに対する排他ロックを確保

3. fopen、flock、fwrite、fclose

 C言語風に。

resource $ファイルハンドル = fopen(string $ファイル名, string $モード
			 					[, bool $use_include_path = FALSE [, resource $context ]] );
$bool値 			= flock ( resource $ファイルハンドル, int $操作 [, int &$wouldblock ] )
int $書込みバイト数 = fwrite ( resource $ファイルハンドル, string $書き込む文字列[, int $length ] )
$bool値 			= fclose ( resource $ファイルハンドル )
 てな書き方をすることもできます。  「flock」を除けば、べたな C言語の経験がある人にはおなじみの名前です。

4. 参考サイト

 本ページは、下記のサイトを参考にさせていただきました。
PHP: file_put_contents - Manual