【问题标题】:Call variable from view in Codeigniter从 Codeigniter 中的视图调用变量
【发布时间】:2014-03-17 04:19:19
【问题描述】:

我正在尝试从 Codeigniter 的视图中调用 $data['form_value'],但该数组返回空。

这是我的控制器:

$data['field'] = $this->cc->get_form_names($data['selid']);
foreach($data['field'] as $key=>$valuee) {
    $data['form_value'] = $this->cc->get_form_value($valuee->select);
}

现在在视图中:

foreach($field as $key=>$valuee) {
    echo "<span\"> ".$valuee->disp_name." :</span>";
    <select name=\"\">";
    foreach($form_value as $v=>$vv) {
        $value = $vv->select;
        echo "<option value=\"".$vv->select."\" >".$vv->select."</option>";
    }
    echo"</select> ";
}

当我执行 var_dump($form_value) 时,它会返回 array(0) { }

我如何获得该变量?

【问题讨论】:

    标签: php codeigniter codeigniter-2 codeigniter-datamapper


    【解决方案1】:

    您正在循环中覆盖 form_value。在您的控制器中尝试以下代码。

    $form_value = array();
    foreach($data['field'] as $key=>$valuee) {
        $form_value[] = $this->cc->get_form_value($valuee->select);
    }
    $data["form_value "] = $form_value ;
    

    【讨论】:

    • 如果 $data["form_value "] 不在控制器的 foreach() 内,它可以正常工作,但我需要设置它的参数。然后我将它再次放入视图中的 foreach 中。
    • 然后在视图本身中做而不是在控制器和视图中做同样的工作。
    • 我希望这会是一种更好的方法来解决这个问题,但是嘿它有效。
    【解决方案2】:

    像这样修改你的 Controller 代码,

    $data['field'] = $this->cc->get_form_names($data['selid']);
    
    foreach($data['field'] as $key=>$valuee) {
        $data['form_value'][] = $this->cc->get_form_value($valuee->select);
    }
    

    $data['form_value'] 应该是一个循环遍历它的数组。您正在将其用作字符串并尝试遍历它。

    希望这会有所帮助:)

    【讨论】:

      猜你喜欢
      • 2023-03-16
      • 2013-09-15
      • 2011-02-06
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 2011-10-12
      • 2019-06-12
      • 1970-01-01
      相关资源
      最近更新 更多