Codeigniter:使用带有foreach循环的开关

时间:2016-08-03 22:01:32

标签: php arrays codeigniter loops foreach

我正在将数组数据传递给我的视图

public function login(){
       $array= array(
           array(
                'type'           =>     'text',
                'usrname'        =>     'username',
                'class'          =>     'form-control',
                'placeholder'    =>     'Username',
             ),
           array(
                'type'           =>     'password',
                'class'          =>     'form-control',
                'placeholder'    =>     'Password',
            ),
           array(
                'type'          =>'heading',
                'heading'       =>'Not a Memer YET ?',
            ),

       );

    $output['data']=$array;
    $this->load->view('authentication',$output);

在我看来,这就是我正在做的事情

<?php foreach ($data as $key=> $value):?>
        <?php 
            switch ($value){
                case  $value['type']=='heading':
                    echo $value['heading'];
                    break;
                case  $value['type']=='text':
                    echo 'textfield';
                    break;
             }

        ?>
    <?php endforeach;?>

这是正常工作,但我只是想问一下这是我采用的方式的标准做法,还是可以有更好的方法在交换机中遍历这个数组。

需要你的帮助

这个问题不是关于我是否应该使用开关,或者如果我想知道我在编码方面使用开关的方式是否正确?或者我可以改进它。

1 个答案:

答案 0 :(得分:1)

您可以修改切换代码,而不是在切换情况下进行比较。

class DropeventController extends Controller
{
    public function htmlcode(Request $request)
    {
        $pluginid = $request['nits_id'];
        $code = Plugins::findOrFail($pluginid);
        $htmlcode = $code->code;
        return response()->json(['htmlcode' => $htmlcode]);
    }

}