我创建了一个 View form_variables.php,其中包含在单个文件中定义的所有表单输入变量。因此,每当我需要创建一个输入字段时,我只需包含 form_variables 文件,然后使用 form_variables.php 中定义的表单输入变量
这是它包含的内容。
<?php
$email = array(
'name' => 'u_email',
'type' => 'text',
'maxlength' => '50',
'class' => 'form-control',
'value' => set_value('e_email'),
'placeholder' => "Enter your Email Address"
);
$pwd = array(
'name' => 'u_pwd',
'type' => 'password',
'maxlength' => '50',
'class' => 'form-control',
'id' => 'pwd',
'placeholder' => "Enter your Password"
); ?>
现在我有了另一个包含表单的 View 。
<?php echo $this->load->view('includes/form_variables'); ?>
<div class="form-group">
<?php echo form_input($email); ?>
</div>
它仍然说变量 $email 未定义。尽管它加载了 form_variables.php 文件。请帮忙。
最佳答案
而不是为此目的使用 View 。尝试使用 Controller
Class form_variables extends CI_Controller
{
function get_email_field()
{
return array(
'name' => 'u_email',
'type' => 'text',
'maxlength' => '50',
'class' => 'form-control',
'value' => set_value('e_email'),
'placeholder' => "Enter your Email Address"
);
}
function get_password_field()
{
return array(
'name' => 'u_pwd',
'type' => 'password',
'maxlength' => '50',
'class' => 'form-control',
'id' => 'pwd',
'placeholder' => "Enter your Password"
);
}
}
现在在另一个 Controller 中调用这个 Controller
$this->load->library('../controllers/form_variables');
// use your function
$email_field = $this->form_variables->get_email_field();
$pass_field = $this->form_variables->get_password_field();
我希望这对你有用..
关于php - 无法在 codeigniter 的另一个 View 中定义的 View 中包含变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30884247/