加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

thinkphp中html:list标签传递多个参数实例

发布时间:2020-12-14 14:01:35 所属栏目:大数据 来源:网络整理
导读:本篇章节讲解关于thinkphp中html:list标签传多个参数问题解决办法,供大家参考研究。具体分析如下: 此改动 针对thinkphp 2.0 版本有效,thinkphp 3.0 版本 未测试.主要修改这个文件 /Thinkphp/Lib/Think/Template/Taglib/TabLibHtml.class.php 的 _

本篇章节讲解关于thinkphp中html:list标签传多个参数问题解决办法,分享给大家供大家参考。具体分析如下:

此改动 针对thinkphp 2.0 版本有效,thinkphp 3.0 版本 未测试. 主要修改这个文件 /Thinkphp/Lib/Think/Template/Taglib/TabLibHtml.class.php 的 _list 方法

注释有新增内容的代码部分是新增加的 主要通过 -- 分割多个参数(会自动替换为,)

代码如下:
parseXmlAttr($attr,'list'); $id = $tag['id']; //表格ID $datasource = $tag['datasource']; //列表显示的数据源VoList名称 $pk = empty($tag['pk'])?'id':$tag['pk'];//主键名,默认为id $style = $tag['style']; //样式名 $name = !empty($tag['name'])?$tag['name']:'vo'; //Vo对象名 $action = $tag['action']=='true'?true:false; //是否显示功能操作 $key = !empty($tag['key'])?true:false; $sort = $tag['sort']=='false'?false:true; $checkbox = $tag['checkbox']; //是否显示Checkbox if(isset($tag['actionlist'])) { $actionlist = explode(',',trim($tag['actionlist'])); //指定功能列表 } if(substr($tag['show'],1)=='$') { $show = $this->tpl->get(substr($tag['show'],1)); }else { $show = $tag['show']; } $show = explode(',$show); //列表显示字段列表 //计算表格的列数 $colNum = count($show); if(!empty($checkbox)) $colNum++; if(!empty($action)) $colNum++; if(!empty($key)) $colNum++; //显示开始 $parseStr = "n"; $parseStr .= ''; $parseStr .= ''; } if(!empty($key)) { $parseStr .= ''; } $parseStr .= '1) { //指定链接传的字段值 // 支持多个字段传递 $array = explode('^',$href[1]); if(count($array)>1) { foreach ($array as $a){ $temp[] = ''{$'.$name.'.'.$a.'|addslashes}''; } $parseStr .= '1) { $parseStr .= '{$'.$name.'.'.$unit[0].'|'.$unit[1].'} '; }else { $parseStr .= '{$'.$name.'.'.$p.'} '; } } }else{ $property = explode('|',$field[0]); if(count($property)>1) { //转换 -- 为,传递多个参数 $property[1] = str_replace('--',$property[1]);//此处为新增内容 $parseStr .= '{$'.$name.'.'.$property[0].'|'.$property[1].'}'; }else { $parseStr .= '{$'.$name.'.'.$field[0].'}'; } } if(!empty($field[2])) { $parseStr .= ''; } $parseStr .= '2) { $parseStr .= ''; }else { $parseStr .= ''; } }else{ //应用 php 函数 $array = explode('|',$val); if(count($array)>2) { $parseStr .= ' '; }else{ //转换 -- 为,传递多个参数 $val = str_replace('--',$val);//此处为新增内容 $parseStr .= ' {$'.$name.'.'.$val.'}'; } } } $parseStr .= '

模版调用演示:

代码如下:

方法 getTaskCategory 传递了3个参数 顺序是: $user['task_category'] $user['exe_user'] $user['id']

方法 printAccept 传递了3个参数 顺序是: $user['status'] $user['exe_user'] $user['id']

其中:

代码如下:
代码如下:
为 传递多个参数的演示

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

'; } foreach($fields as $field) {//显示指定的字段 $property = explode('|',$field[0]); $showname = explode('|',$field[1]); if(isset($showname[1])) { $parseStr .= ''; } } if(!empty($action)) {//如果指定显示操作功能列 $parseStr .= '操作