| '.__('Mapping', $lang).' | ';
echo '';
echo '| 字段名 | 被映射字段 | ';
foreach($mapping as $key=>$item)
{
echo ''.$class_name . $key .' | $this->'. $item . ' | ';
}
echo ' 说明:假设字段名为:mid, 被映射字段为: $this->id,则表示:数据中的mid字段和当前 ORM 的 id字段在筛选数据时保持一一对应关系。 ';
echo ' | ';
}
function _doc_pasre_where($where, $class_name, $lang)
{
echo '| '.__('查询条件(where)', $lang).' | ';
echo '';
echo '| 字段名 | 值 | ';
foreach($where as $key=>$item)
{
echo '' . $class_name . $key .' | '.$item.' | ';
}
echo ' 说明:在查询时将附带这些条件,和Mapping的区别是,Mapping的条件是随每一个Data而变的,而Where中的条件是固定的。 ';
echo ' |
';
}
function _doc_pasre_cache($cache, $setting, $lang)
{
echo '| '.__('Cache Setting', $lang).' | ';
echo '';
echo '| 项目 | 值 | ';
echo '| 缓存配置: | ';
if ($cache['driver_config'])
{
echo $cache['driver_config'];
}
else
{
echo 'default';
}
echo ' | ';
echo '| 有效期: | ';
if ($cache['expire'])
{
echo $cache['expire'];
}
else if ($cache['max_age'])
{
echo $cache['max_age'];
}
else
{
echo '默认';
}
echo ' | ';
if ($cache['max_hit'])
{
echo '| 最大命中数 : | ';
echo $cache['max_hit'];
echo ' | ';
}
if ($cache['renew_age'] || $cache['renew_hit'])
{
echo '| 自动更新率 : | ';
echo $cache['renew_age'];
echo ' | ';
}
if ($cache['renew_hit'])
{
echo '| 命中更新率 : | ';
echo $cache['renew_hit'];
echo ' | ';
}
echo ' ';
echo ' |
';
}
}
$v = @unserialize($setting['value_serialized']);
?>
| 一般属性 |
| 字段名 |
' . $v['field_name'] .'';
}
else
{
echo $v['field_name'];
}
}
else
{
echo $setting['name'];
}
}
else
{
echo '';
}
}
else
{
echo $setting['name'];
}
?>
|
'.__('PRIMARY', $lang).' | ';
echo '';
echo ' | ';
}
if (is_array($v) && $v['is_readonly'])
{
echo '| '.__('Readonly Field', $lang).' | ';
echo '';
echo ' |
';
}
if (is_array($v) && $v['is_virtual_field'])
{
echo '| '.__('Virtual Field', $lang).' | ';
echo '';
echo ' |
';
}
?>
| 数据格式化设置 |
| 方法 |
参数 |
';
if (is_array($item))
{
echo ''.$item[0].' | '.dump($item[1]).' | ';
}
else
{
echo ''.$item.' | - | ';
}
echo '';
}
?>
|
| ORM对象映射设置 |
'.__('ORM Name', $lang).' | ';
echo '',$v['orm']['name'],' | ';
echo '';
echo '| 返回 | ';
if ($v['orm']['return']=='single')
{
echo 'ORM_'.$v['orm']['name'].'_Data 对象';
}
else
{
echo 'ORM_'.$v['orm']['name'].'_Result 集合';
}
echo ' |
';
if (is_array($v['orm']['mapping']))
{
_doc_pasre_mapping($v['orm']['mapping'], 'ORM_'.$v['orm']['name'].'_Data::$', $lang);
}
if (is_array($v['orm']['where']))
{
_doc_pasre_where($v['orm']['where'], 'ORM_'.$v['orm']['name'].'_Data::$', $lang);
}
if (is_array($v['orm']['cache']))
{
_doc_pasre_cache($v['orm']['cache'], $setting, $lang);
}
if (isset($v['orm']['limit']))
{
echo '| '.__('limit', $lang).' | ';
echo $v['orm']['limit'];
echo ' |
';
}
if (isset($v['orm']['offset']))
{
echo '| '.__('offset', $lang).' | ';
echo $v['orm']['offset'];
echo ' |
';
}
?>
| 数据获取设置 |
| 驱动获取驱动 |
|
回调函数 | ';
echo '';
if (is_array($v['data']['function']))
{
if ($v['data']['function'][0]=='$this')
{
echo $v['data']['function'][0].'->';
}
else
{
echo $v['data']['function'][0].'::';
}
echo $v['data']['function'][1].'($where_array'.($v['data']['function'][0]=='$this'?'':', $this').')';
}
else
{
echo $v['data']['function'];
}
echo ' | ';
if (is_array($v['data']['arguments']))
{
echo '| 回调函数参数 | ';
echo '';
foreach ($v['data']['arguments'] as $item)
{
echo '| '.htmlspecialchars($item).' | ';
}
echo '
|
';
}
break;
case 'database':
echo '| 数据库查询配置 | ';
echo '';
echo '';
echo '| 项目 | 值 | ';
echo '| 数据库配置: | '.$v['data']['database'].' | ';
echo '| 表名称: | '.$v['data']['tablename'].' | ';
if ($v['data']['result_single_row'])
{
echo '| 返回单行数据: | | ';
}
else
{
echo '| 返回查询集合: | | ';
}
if (isset($v['data']['limit']))
{
echo '| limit: | '.$v['data']['limit'].' | ';
}
if (isset($v['data']['offset']))
{
echo '| offset: | '.$v['data']['offset'].' | ';
}
if (isset($v['data']['order_by']))
{
echo '| order by: | ';
echo '| 字段 | 排序 | ';
if (is_array($v['data']['order_by']))
{
foreach($v['data']['order_by'] as $kk=>$vv)
{
echo '| '.$kk.' | | ';
}
}
else
{
echo '| '.$v['data']['order_by'].' | | ';
}
echo ' ';
echo ' | ';
}
echo ' ';
echo ' |
';
case 'rest':
case 'url':
case 'httpget':
echo '| REST配置 | ';
echo '';
echo '';
echo '| 项目 | 值 | ';
echo '| 接口URL: | '.$v['data']['url'].' | ';
echo '| Method: | '.strtoupper($v['data']['method']).' | ';
echo '| 数据格式: | '.$v['data']['data_format'].' | ';
if ($v['data']['arguments'] && is_array($v['data']['arguments']))
{
echo '| '.__('附加参数:', $lang).' | ';
echo '';
echo '| 键 | 值 | ';
foreach($v['data']['arguments'] as $key=>$item)
{
echo '' . $key .' | '.$item.' | ';
}
echo ' ';
echo ' | ';
}
echo ' ';
echo ' |
';
break;
default:
break;
}
?>
| 返回对象设置 |
';
if (is_array($v['object']))
{
echo '| 返回对象: | '.$v['object']['name'].' |
';
if (is_array($v['object']['callback']))
{
echo '| 回调函数: | ';
$tmp_call_map = array
(
'set_data' => '设置数据',
'get_data' => '获取数据',
'to_string' => '输出为字符串',
'is_change' => '数据是否修改',
);
echo '| 回调类型 | 回调方法 | ';
foreach ($v['object']['callback'] as $kk=>$vv)
{
echo '| '.$tmp_call_map[$kk].'('.$kk.'): | '.$v['object']['name'].'::'.$vv.' | ';
}
echo ' ';
echo ' |
';
}
}
else if (is_string($v['object']))
{
echo '| 返回对象: | '.$v['object'].' |
';
}
echo '';
}
}
?>