コード例 #1
0
ファイル: FileStorage.php プロジェクト: jhasheng/purple
 /**
  * 保存收集到的数据
  * @param Request $request
  * @return boolean
  */
 public function store(Request $request)
 {
     $fileName = $this->getFileName($request->getUuid());
     $profileIndexed = is_file($fileName);
     if (!$profileIndexed) {
         // Create directory
         $dir = dirname($fileName);
         if (!is_dir($dir) && false === @mkdir($dir, 0777, true) && !is_dir($dir)) {
             throw new \RuntimeException(sprintf('Unable to create the storage directory (%s).', $dir));
         }
     }
     $data = $request->toArray();
     $data['created_at'] = date('Y-m-d H:i:s');
     if (false === file_put_contents($fileName, serialize($data))) {
         return false;
     }
     if (!$profileIndexed) {
         // Add to index
         if (false === ($file = fopen($this->getFileIndexName(), 'a'))) {
             return false;
         }
         fputcsv($file, array($request->getUuid()));
         fclose($file);
     }
     return true;
 }
コード例 #2
0
ファイル: RedisStorage.php プロジェクト: jhasheng/purple
 /**
  * 保存收集到的数据
  * @param Request $request
  * @return void
  */
 public function store(Request $request)
 {
     /**
      * @var $config \Illuminate\Config\Repository
      */
     $config = $this->app['config'];
     $table = $config->get('purple.table', 'purple');
     $client = Cache::store('redis')->connection();
     $data = $request->toArray();
     $data['created_at'] = date('Y-m-d H:i:s');
     $client->hset($table, $request->getUuid(), serialize($data));
 }
コード例 #3
0
ファイル: MySQLStorage.php プロジェクト: jhasheng/purple
 /**
  * 保存收集到的数据
  * @param Request $request
  * @return void
  */
 public function store(Request $request)
 {
     self::create($request->toArray());
 }