有时候在控制器中做了一个数组 然后需要在模板view中循环 同时还需要判断是否有选中的值,就会造成很多开始闭合标签 以前都是这样写

这样实在太繁琐了,不如封装一个小物件

封装函数如下:

代码如下:

function get_radio($array=array(),$key=null)
{
$string=$attribute_info="";
$attribute=isset($array['attribute'])?(array)$array['attribute']:array();//获取属性
$data=isset($array['data'])?(array)$array['data']:array();//获取data
foreach ($attribute as $k => $v)
{
$attribute_info.=' '.$k.'="'.$v.'" ';//拼接成radio的属性
}
if($key===null){$key=key($data);}//如果没有设置选择key 默认选中第一个
foreach ($data as $k => $v)
{
$checked="";
if($k==$key)
{
$checked='checked="checked"';//如果设置了选择key 就选中它
}
$string.="<label><input type='radio' {$checked} {$attribute_info} value='".$k."' />".$v."</label>";
}
return $string;//返回字符串
}

调用如下:

效果如图:

最新文章

  1. 【转】安全传输协议SSL和TLS及WTLS的原理
  2. 再次用CodeIgniter实现简易blog
  3. 计时函数 clock() in c and c++
  4. 收藏:关于UseSubmitBehavior和OnClientClick同时使用,导致无法触发后台事件的问题
  5. Android自定义样式
  6. 【Stage3D学习笔记续】真正的3D世界(三):纹理效果
  7. Android 使用HttpClient方式提交GET请求
  8. 【高斯消元】兼 【期望dp】例题
  9. [js高手之路] 设计模式系列课程 - DOM迭代器(2)
  10. Vue mint ui用在消息页面上拉加载下拉刷新loadmore 标记
  11. git tag 打标签
  12. Alpha 冲刺 (10/10)
  13. AndroidStudio 3 export jar file
  14. 实现kylin定时跑当天的任务
  15. JMeter中各种请求格式--aduocd的博客
  16. DDBS
  17. 酒店订房系统:如何使用mysql来确定一个时间段内的房间都是可订的
  18. jquery ajax 跨域设置
  19. bzoj1855: [Scoi2010]股票交易 单调队列优化dp ||HDU 3401
  20. html头部转码

热门文章

  1. DOM Ready 详解
  2. wamp的mysql密码修改
  3. LayoutInflater的获取与使用
  4. C# 使用Salt+Hash来为密码加密
  5. 根据WSDL生成代理类方式
  6. python和django的一些小技巧(locals()...)
  7. HTML5 push
  8. WebApp触屏版网站开发要点
  9. Android 模拟器上的127.0.0.1 localhost
  10. 【HDOJ】2159 FATE