• 小物件之checkbox复选框


    有时候需要输出一组checkbox复选框,并且做根据选定元素将其选中的功能,以往都要在模板中循环输出checkbox标签,同时加以判断是否需要选中,这样就会造成很多开始闭合标签 以前都是这样写

     

    现在我将这样的代码封装成一个函数直接调用

    封装函数如下:

    完整代码如下:

    <?php
    function get_checkbox($array=array(),$key_list=array())
    {
        $string=$attribute_info="";
        $attribute=isset($array['attribute'])?(array)$array['attribute']:array();//获取属性
        $data=isset($array['data'])?(array)$array['data']:array();//获取data
        foreach ($attribute as $key => $v) 
        {
            $attribute_info.=' '.$key.'="'.$v.'" ';//拼接成checkbox的属性
        }
        //遍历全部
        foreach ($data as $k => $v) 
        {
            $checked="";
            if(in_array($k,$key_list))
            {
                $checked='checked="checked"';//如果设置了选择key 就选中它
            }
            $string.= "<input type='checkbox' value='{$k}' {$attribute_info} {$checked} />{$v}";//拼接checkbox
        }
        return $string;//返回该复选框
    }
    
    $array=array(
        "attribute"=>array(
            "name"=>"checkbox_name[]",
        ),
        "data"=>array(
            1=>"看书",
            2=>"打篮球",
            3=>"看电影",
            4=>"旅行",
            5=>"打游戏",
            6=>"冒险",
        ),
    );
    $my_hobby=array(1,2,5);
    echo (get_checkbox($array,$my_hobby));
    ?>

    效果如图:

  • 相关阅读:
    51nod 1284:2 3 5 7的倍数 容斥原理
    POJ 2006:Litmus Test 化学公式
    POJ 2039:To and Fro
    POJ 2014:Flow Layout 模拟水题
    南阳722--数独(Dfs)
    Poj2377--Bad Cowtractors(最大生成树)
    并查集知识点总结
    Poj1861--Network(最小生成树)
    杭电2824--The Euler function(欧拉函数)
    杭电1284--钱币兑换问题(有趣)
  • 原文地址:https://www.cnblogs.com/lizhaoyao/p/7922387.html
Copyright © 2020-2023  润新知