解决的办法,在phpcms\libs\functions\extention.func.php(自定义函数文件)中定义一个方法
/**
* 获取选项的格式化输出
* @param str $field 字段名称 必须
* @param int $value 字段值 必须
* @param int $modelid 模型ID 必须
* 2014-09-28 by awen
*/
function get_box($field, $value,$modelid) {
$fields = getcache('model_field_'.$modelid,'model');
extract(string2array($fields[$field]['setting']));
if($outputtype) {
return $value;
} else {
$options = explode("\n",$fields[$field]['options']);
foreach($options as $_k) {
$v = explode("|",$_k);
$k = trim($v[1]);
$option[$k] = $v[0];
}
$string = '';
switch($fields[$field]['boxtype']) {
case 'radio':
$string = $option[$value];
break;
case 'checkbox':
$value_arr = explode(',',$value);
foreach($value_arr as $_v) {
if($_v) $string .= $option[$_v].' ';
}
break;
case 'select':
$string = $option[$value];
break;
case 'multiple':
$value_arr = explode(',',$value);
foreach($value_arr as $_v) {
if($_v) $string .= $option[$_v].' ';
}
break;
}
return $string;
}
}这个是照内容输出页面的原理弄出来的,是系统的实现方式,安全可靠,只是把原来的、号分隔改成了空格,也可以加一个标签之类的,可以自己改。
前台使用
第一个是你的字段名称,第二个是你字段的值,就是输出的1、2、3,第三个是你所使用的模型iD
如楼盘特色字段名为‘lpts’,字段值为$r[lpts]这是loop循环得到的变量也可以是一个指定的你定义的值,第三个15是楼盘模型的ID
{get_box('lpts',$r[lpts],15)}
效果如下
苗景云的博客
<< 向左走,向右走 >>
<< 向左走,向右走 >>
