// +---------------------------------------------------------------------- /** * select返回的数组进行整数映射转换 * * @param array $map 映射关系二维数组 array( * '字段名1'=>array(映射关系数组), * '字段名2'=>array(映射关系数组), * ...... * ) * @author 朱亚杰 * @return array * * array( * array('id'=>1,'title'=>'标题','status'=>'1','status_text'=>'正常') * .... * ) * */ function int_to_string(&$data, $map = array('status' => array(1 => '正常', -1 => '删除', 0 => '禁用', 2 => '未审核', 3 => '草稿'))) { if ($data === false || $data === null) { return $data; } $data = (array) $data; foreach ($data as $key => $row) { foreach ($map as $col => $pair) { if (isset($row[$col]) && isset($pair[$row[$col]])) { $data[$key][$col . '_text'] = $pair[$row[$col]]; } } } return $data; } /** * 获取对应状态的文字信息 * @param int $status * @return string 状态文字 ,false 未获取到 * @author huajie */ function get_status_title($status = null) { if (!isset($status)) { return false; } switch ($status) { case -1:return '已删除'; break; case 0:return '禁用'; break; case 1:return '正常'; break; case 2:return '待审核'; break; default:return false; break; } } // 获取数据的状态操作 function show_status_op($status) { switch ($status) { case 0:return '启用'; break; case 1:return '禁用'; break; case 2:return '审核'; break; default:return false; break; } } /** * 获取行为类型 * @param intger $type 类型 * @param bool $all 是否返回全部类型 * @author huajie */ function get_action_type($type, $all = false) { $list = array( 1 => '系统', 2 => '用户', ); if ($all) { return $list; } return $list[$type]; } /** * 获取行为数据 * @param string $id 行为id * @param string $field 需要获取的字段 * @author huajie */ function get_action($id = null, $field = null) { if (empty($id) && !is_numeric($id)) { return false; } $list = cache('action_list'); if (empty($list[$id])) { $map = array('status' => array('gt', -1), 'id' => $id); $list[$id] = db('Action')->where($map)->field(true)->find(); } return empty($field) ? $list[$id] : $list[$id][$field]; } /** * 根据条件字段获取数据 * @param mixed $value 条件,可用常量或者数组 * @param string $condition 条件字段 * @param string $field 需要返回的字段,不传则返回整个数据 * @author huajie */ function get_document_field($value = null, $condition = 'id', $field = null) { if (empty($value)) { return false; } //拼接参数 $map[$condition] = $value; $info = db('Model')->where($map); if (empty($field)) { $info = $info->field(true)->find(); } else { $info = $info->value($field); } return $info; }