Php CodeIgniter中局部变量作用域的局部视图
我的一个视图中有类似于以下代码的代码:Php CodeIgniter中局部变量作用域的局部视图,php,codeigniter,Php,Codeigniter,我的一个视图中有类似于以下代码的代码: <?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_1', 'is_required' => true)); ?> ... some html ... <?php $this->load->view('_validation_error', array('erro
<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_1', 'is_required' => true)); ?>
... some html ...
<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_2')); ?>
... 一些html。。。
这允许我在部分中使用$errors
、$field
和$is_required
。这很好,尽管这里发生的事情是,如果我在后续调用partial时不提供'is_required'值,它将被设置为上一个值(在本例中为true)
我可以每次都输入这个值,但我希望它能像函数的可选参数一样工作。CodeIgniter中是否有任何功能允许partials拥有自己的局部变量范围。Sweet!没关系,我想我想出了一个解决办法 而不是去:
<?php $this->load->view('_validation_error', array('errors' => $errors, 'field' => 'address_1', 'is_required' => true)); ?>
我可以去:
<?php $this->load->view('_validation_error', array('data' => array('errors' => $errors, 'field' => 'address_1', 'is_required' => true))); ?>
这样我就可以访问$data['errors']
,$data['field']
和$data['is'u required']
这样,未传入的任何值都将被覆盖,并且默认情况下是可选的
:)