PHPの質問です

hoge1.csvを以下のPHPで変換してるのですが
=========
<?php
mb_language("Japanese");
mb_internal_encoding("utf-8");
$arr = file_get_contents("hoge1.csv");
$arr = mb_convert_encoding($arr, "utf-8", "auto");
$patterns = array();
$patterns[0] = "/あ/mu";
$replacements = array();
$replacements[0] = 'い';
$sResult = preg_replace($patterns, $replacements, $arr);
file_put_contents("hogehoge.csv", $sResult);
?>
============
他にもhoge2.csv hoge3.csv というcsvファイルがありまして
hoge2.csvとhoge3.csvも上のphpファイルで変換を行いhogehoge.csvに追加していきたいです。
その場合どこをいじればいいでしょうか?

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2016/06/17 16:33:22
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:tobeoscontinue No.1

回答回数220ベストアンサー獲得回数59

ポイント200pt

>hogehoge.csvに追加していきたいです。
file_put_contentsのマニュアルhttp://php.net/manual/ja/function.file-put-contents.phpを読んでもらえばわかるように FILE_APPEND を付加することで追記されます。
file_put_contents("hogehoge.csv", $sResult, FILE_APPEND);

入力ファイルの切り替えはこのphpファイルをどのように実行するかで変わってくるかと。
コマンドラインから実行するのであればhoge2.csvとhoge3.csvをhoge1.csvにリネーム
して実行する。あるいはファイルネームを読み込むようにする。あるいは引数($argv)で渡すなど。

hoge1.csv、hoge2.csv、hoge3.csvとあらかじめ決まっているのなら三つのファイルを
処理するように書き換えてしまう。


蛇足ながら
$patterns = array();
$patterns[0] = "/あ/mu";
$replacements = array();
$replacements[0] = 'い';

$patterns = array("/あ/mu");
$replacements = array('い');
と書くことが可能です。
また一つだけなら
$sResult = preg_replace("/あ/mu", 'い', $arr);
とすることができます。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません