毎日自動でPHPプログラムにPHPプログラムを書かせるようにしました。
PHPの連想配列変数くらい、PHPに毎日自動で更新してもらうことにしましたw
デイリー過去ログランキングのリンクと、1位の名前の配列更新。
画面キャプチャと、役に立つか謎なプログラムはこんな感じです。includeするphpを自動で更新してます。自動イベント運用も夢じゃない!
include_once "rankerInfo.php"; $mod = filemtime("rankerInfo.php"); //print "最終更新日:".date("Y/m/d H:i",$mod); $isYesterdayUpdate = date("d") != date("d", $mod); //PHPファイルを更新する。 if($isYesterdayUpdate){ function get_filename_arr($dir, $ext0){//$match) { $filename_arr = array(); $dh = opendir($dir); while(($filename = readdir($dh)) !== false) { $ext = substr($filename, strrpos($filename, '.') + 1); if($ext === $ext0){ $filename_arr[] = $filename; } } return $filename_arr; } $logNames = get_filename_arr(".", "log"); $todayStr = date('y')."d".date('z').".log"; $thisWeekStr = date('y')."x".date('W').".log"; $dailyArrayStr = "";//14d122.log $weeklyArrayStr = "";//14x18.log for($i=0; $i < count($logNames); $i++){ $fileName = $logNames[$i]; if($todayStr !== $fileName && strpos($fileName, "d")){ //ファイル名先頭から名前取得? //echo $fileName."@日間<br>"; //ロード $fp = fopen($fileName, 'r'); if ($fp){ if (flock($fp, LOCK_SH)){ $rank1Name = fgets($fp); $rank1Name = substr($rank1Name, 0, strpos($rank1Name, "\t")); flock($fp, LOCK_UN); }else{ //print('ファイルロックに失敗しました'); } } fclose($fp); $dailyArrayStr = "'".str_replace(".log", "", $fileName)."'=>'".$rank1Name."',\n".$dailyArrayStr; }else if($thisWeekStr !== $fileName && strpos($fileName, "x")){ //ファイル名先頭から名前取得? //echo $fileName."@週間<br>"; //ロード $fp = fopen($fileName, 'r'); if ($fp){ if (flock($fp, LOCK_SH)){ $rank1Name = fgets($fp); $rank1Name = substr($rank1Name, 0, strpos($rank1Name, "\t")); flock($fp, LOCK_UN); }else{ //print('ファイルロックに失敗しました'); } } fclose($fp); $weeklyArrayStr = "'".str_replace(".log", "", $fileName)."'=>'".$rank1Name."',\n".$weeklyArrayStr; } } $phpTxt = "<?php\n". "\$dailyRank1Array = array(\n". $dailyArrayStr.//" '14d125'=>'あんっー',\n". ");\n". "\$weeklyRank1Array = array(\n". $weeklyArrayStr.//" '14x18'=>'(ま゜ー゜さ)ノ'\n". ");\n". "?>"; //phpでまるごと保存 file_put_contents("rankerInfo.php", $phpTxt); }
https://play.google.com/store/apps/details?id=air.retroweb.flappysimamura.production&0508