最新消息: 新版网站上线了!!!

phpcmsv9添加自定义多选字段后的前台调用方法

phpcms v9之所以如此受欢迎就是因为它强大的字段功能,后台模型内容任由自己改,是目前最好的二次开发的开源cms,
今日在开发过程当中,看到了开发phpcms时添加多选字段无论怎么写都是一个内容,选项卡1的体现,于是找了各方面的资料用来解决记录一下,以便以后遇到此类问题的同行能够很快的解决此类问题,php爱好者交流群:223794327
php爱好者小编小寒在这里紧为收藏一下
找到文件 /phpcms/libs/function/extention.func.php,打开文件添加以下代码:
/**
* 根据box类型字段获取显示名称
* @param $field 字段名称
* @param $value 字段值
* @param $modelid 字段所在模型id
*/
function box($field, $value, $modelid='') {
$fields = getcache('model_field_'.$modelid,'model');
extract(string2array($fields[$field]['setting']));
$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;
}
这样就可以了,前台调用该字段的时候使用{box('fenlei',$r[fenlei],$modelid)}
 

转载请注明:谷谷点程序 » phpcmsv9添加自定义多选字段后的前台调用方法