예제 #1
0
 /** 1年分のデータを生成する
 	 		2016 1/10 までの 1年分
 			2015-01-01 
 			http://localhost/livice/Logger/dummy_log_generator/2015-01-10/2016-01-10
 			1465件/25.0960秒 				*/
 public function dummy_log_generator($pram_start, $pram_end)
 {
     $this->benchmark->mark('start');
     $this->load->model('dummy_log_model', 'DummyLog', TRUE);
     $this->load->model('daily_dummy_log_model', 'DailyDummyLog', TRUE);
     $dummy = new Dummy();
     // log_generator()から吐き出される配列は以下の構造
     // array
     //   2015 =>
     //     array
     //       2 =>
     //         array
     //           0 => int 9
     //           1 => int 10
     //           2 => int 11
     //           3 => int 12
     //           4 => int 13
     //               :
     // 							 :
     // 							 :
     $structure = $dummy->log_generator($pram_start, $pram_end);
     $counter = 1;
     foreach ($structure as $year => $month) {
         // 年ループ
         foreach ($month as $days_key => $days_value) {
             // 月ループ
             foreach ($days_value as $day) {
                 // 日ループ
                 for ($cnt = 1; $cnt <= 4; $cnt++) {
                     // ユーザー分のループ
                     $daily_dummy_logs = array('user' => $cnt, 'heartbeat' => $dummy->heartbeat(), 'calories' => $dummy->calories(), 'elevation' => $dummy->elevation(), 'blood' => $dummy->blood(), 'speed' => $dummy->speed(), 'created' => date("Y:m:d", mktime(0, 0, 0, $days_key, $day, $year)));
                     // DBへ書き込み
                     $this->DailyDummyLog->insert_daily_dummy_data($daily_dummy_logs);
                     $counter++;
                 }
             }
         }
     }
     //var_dump($structure);
     echo $counter . '件のデータ登録に成功しました';
     echo br(1);
     $this->benchmark->mark('end');
     echo $this->benchmark->elapsed_time('start', 'end') . '秒で処理が完了しました';
 }