自動でバックアップ

アフィリエイトリンクを管理しているCSVの一つが壊れました。
ええ、真っ白です(目の前も。。。)


「CSVは壊れやすいよ」と忠告を受けていたのですが、なかなかMySQLなどの勉強も手付かずなのが現状でして^^;
幸いバックアップは取っていたので復旧は容易でしたが、アクセス数順に並び替えをしていたのがリセットされてしまいました。
「アクセス数順に並び替え」がデータの壊れた元凶でしょう。
たぶん同時アクセスなんかでしょうね。flock関数はちゃんと使っているんですが、それでもまれにこういうことが起こります。
そこで、根本的な解決にはなりませんが、1日ごとにデータのバックアップを取るスクリプトを作りました。

<?php
$Souece="データファイル";
$CopyData="バックアップ用ファイル";
$NowDate=date("Ymd");
$LastDate=date("Ymd",filemtime($Souece));
if($NowDate!=$LastDate){
copy($Souece,$CopyData);
}
?>

データ用のファイルの更新日付と今日の日付を調べて異なっていればバックアップ用ファイルにコピーするという簡単なものですが、これで少なくとも壊れたその日のうちなら前日の状態まで戻せます。if文を工夫すれば数日分のバックアップも保存可能です。
filemtime関数って他にも使い道がありそうですね。
何か面白いことに使えないかなあ。