PHPのfile_put_contents関数
file_put_contents
(PHP5)
file_put_contents - ファイルに文字列を書き込みます
説明
int file_put_contents (string $filename,mixed$data[abstract$flag=0[,resources$background]])
この関数は、ファイルにデータを連続的に書き込む fopen()、fwrite()、および fclose() の要件と同じです。
ファイルが存在しない場合は、ファイルが作成されます。それ以外の場合、FILE_APPEND フラグが設定されていない限り、既存のファイルは上書きされます。
パラメータ
ファイル名
データを書き込むファイルパス。
データ
このデータを添えて当社までご連絡ください。文字列、配列、またはストリーム リソース (上記で説明) を使用できます。
データ ストリームがリソースの場合、ストリームの残りのバッファが指定されたファイルにコピーされます。これは、stream_copy_to_stream() を使用するのと似ています。
データ パラメーターを単一レベルの配列として指定することもできます。これは file_put_contents($filename,explode('',$array)) と同等です。
旗
フラグ値は、バイナリ演算子または ( | ) 演算子によって追加された、次のフラグの任意の組み合わせ (いくつかの制限付き) にすることができます。
国旗の説明
FILE_USE_INCLUDE_PATH は、ファイル名に含まれるディレクトリを検索します。詳細については、「include_path」を参照してください。
FILE_APPEND アーカイブ ファイル名がすでに存在する場合、データを上書きするのではなく、ファイルに追加します。
LOCK_EX はファイルの排他ロックを取得し、書き込みを開始します。
FILE_TEXT データ書き込み用のテキスト モード。 Unicode セマンティクスが有効な場合、デフォルトの文字エンコーディングは UTF-8 です。別のエンコーディングを指定したり、カスタム範囲を確立したり、stream_default_encoding() を使用してデフォルトを変更したりできます。このフラグは FILE_BINARY では使用できません。このフラグは PHP 6 以降でのみ機能します。
FILE_BINARY データはバイナリ モードで書き込まれます。これはデフォルト設定であり、FILE_TEXT では使用できません。このフラグは PHP 6 以降でのみ機能します。
背景
リソースの有効なスコープ内で stream_context_create() を確立します。
戻り値
この関数は、ファイルに書き込まれたバイト数を返し、失敗した場合は FALSE を返します。
例
例 #1 簡単な例を使用します
$file = 'people.txt';
// ファイルを開いて既存のコンテンツを取得します
$current = file_get_contents($file);
// ファイルに新しい人物を追加します
$current .= "ジョン・スミスン";
// 内容をファイルに書き戻します
file_put_contents($file, $current);
?>
$file = 'people.txt';
// ファイルに追加する新しい人物
$person = "ジョン・スミスン";
// 内容をファイルに書き込みます
// FILE_APPEND フラグを使用してファイルの末尾にコンテンツを追加します
// そして、他の人が同時にファイルに書き込むことを防ぐための LOCK_EX フラグ
file_put_contents($file, $person, FILE_APPEND | LOCK_EX);
?>