content_output.class.php 725 B

12345678910111213141516171819202122232425
  1. <?php
  2. class content_output {
  3. var $fields;
  4. var $data;
  5. function __construct($model_id,$cat_id = 0,$categorys = array()) {
  6. $this->model_id = $model_id;
  7. $this->cat_id = $cat_id;
  8. $this->categorys = $categorys;
  9. $this->fields = json_decode(Yii::$app->cache->get(CacheId::modelFieldCacheId($model_id)),true);
  10. }
  11. function get($data) {
  12. $this->data = $data;
  13. $this->id = $data['id'];
  14. $info = array();
  15. foreach($this->fields as $field=>$v) {
  16. if(!isset($data[$field])) continue;
  17. $func = $v['form_type'];
  18. $value = $data[$field];
  19. $result = method_exists($this, $func) ? $this->$func($field, $data[$field]) : $data[$field];
  20. if($result !== false) $info[$field] = $result;
  21. }
  22. return $info;
  23. }
  24. }?>