Example #1
0
 /**
  *
  *
  * @param string $matchId
  * @param array $data
  * @return boolean
  */
 public function serialize(Model $Model, $data)
 {
     if (empty($data[$Model->alias])) {
         return $data;
     }
     $fields = $this->settings[$Model->alias]['field'];
     $engine = $this->settings[$Model->alias]['engine'];
     if (!empty($data[$Model->alias][0]) && array_intersect_key($fields, array_keys($data[$Model->alias][0]))) {
         foreach ($data[$Model->alias] as $key => $model) {
             $model = $Model->serialize(array($Model->alias => $model));
             $data[$Model->alias][$key] = $model[$Model->alias];
         }
     } else {
         foreach ($fields as $field) {
             if (isset($data[$Model->alias][$field]) && is_array($data[$Model->alias][$field])) {
                 if ($engine == 'json') {
                     $data[$Model->alias][$field] = @json_encode($data[$Model->alias][$field]);
                 } else {
                     $data[$Model->alias][$field] = @serialize($data[$Model->alias][$field]);
                 }
             }
         }
     }
     return $data;
 }