PHPのfile_put_contents関数でファイルに書き込みをしよう!

PHPのfile_put_contents関数でファイルに書き込みをしよう!PHP

PHPのfile_put_contents関数を使用して指定のファイルに文字を書き込む方法を解説します。

file_put_contents関数は、主にファイルの中身を自動更新する際に使用し、文字だけでなくタグや関数も書き込むことが可能です。

file_put_contents関数とは?

file_put_contents関数は、PHP5, PHP7, PHP8で使用できる関数で、指定したファイルへ指定したデータを書き込むことが可能です。

file_put_contents関数の構文

file_put_contents関数の構文は以下のとおりです。

file_put_contents()でfile_put_contentsを定義し、()の中に引数を入れていきます。

ちなみに、$hensu = file_put_contents();など、変数に格納して使うことも可能です。

file_put_contents(ファイル名.拡張子, 書き込むデータ);

$send_text = “送りたいデータ”;
$file = “送り先のファイル名.拡張子”;

file_put_contents($file, $send_text);

file_put_contents関数の引数

下記がfile_put_contents関数に指定できる引数の一覧です。

ファイル名と書き込むデータ($filenameと$data)さえ指定すれば、指定したファイルに書き込みが可能です。

file_put_contents関数の引数 $filename

文字列データを書き込むファイル名を指定します。

file_put_contents関数の引数 $data

ファイルに書き込むデータを指定します。変数・文字列・配列が指定可能です。

file_put_contents関数の引数 $flags

Web制作ではあまり使用しませんが、フラグも指定可能です。

フラグは下記の3つです。

・FILE_USE_INCLUDE_PATH → インクルードパスを使用

・FILE_APPEND → ファイルを追記モードで開く

・LOCK_EX → 書き込み中にファイルをロック

複数のフラグを指定する場合は論理演算子OR( | )を使います。

file_put_contents関数の引数 $context

同じ処理や記述でも状況に応じて動作などが異なる場合に、その選択基準となる判断材料や条件で使用する場合に指定します。

返り値

ファイルに書き込むまれたバイト数をint型で返します。

書き込みに失敗した場合には、falseを返します。

file_put_contents関数でファイルに書き込みをする例文

実務でよく使用する形式を例文として出しました。

下記のコードは、$arrayに多次元配列を定義し、$send_textの中にarray_one_oneの値(one)を格納しました。

$fileは、ファイル名が格納されている変数です。

そして最後に、file_put_contents($file, $send_text);で$fileに格納されているファイル(text.html)に$send_textの内容(one)が記述されます。

test.htmlのファイルさえ作っていただければ、コピペで動くので是非お試しください!

$array = [
“array_one” => [
“array_one_one” => “one”,
“array_one_two” => “two”,
“array_one_three” => “three”
]
];

$send_text = $array[‘array_one’][‘array_one_one’];
$file = “text.html”;
file_put_contents($file, $send_text);

our note サービス一覧

our noteはブログに加えて、下記のサービスを行っております。

バナー制作やコーディングなどの、Web制作に関するご依頼を頂いております。

また、私が制作したLINEスタンプの販売も行っております。

詳細は、下記をご覧ください。

ココナラ

LINEスタンプ ゲーマーズスタンプ

「ココナラ」というサービスを活用して、バナー制作やコーディングの案件を受注しております。

品質を担保するため、最大2案件までとさせていただいております。

案件のご相談やご依頼がございましたら、ココナラからご依頼をお願いいたします。

ココナラ

タイトルとURLをコピーしました