将单个变量中的json数组发送到视图codeigniter的简单方法

时间:2016-10-30 23:22:48

标签: php codeigniter codeigniter-3 php-7

当我尝试使用名为$this->data['fields'] = $menu;的索引访问我的json结果时,我注意到我必须使用$this->data发送所有数据,但此时我想显示一些我不能从该数组中获取值,因为在我的情况下这是一种糟糕的访问方式。但是如果我使用我的会话变量$data = $this->session->userdata('log');,我可以做到这一点。所以我认为发送我的数组json的最好方法就是这个$variable = $menu但是我想要一个索引可以轻松访问,但我不知道如何添加它而不使用$this->data['fields'] = $menu;还有其他方法吗?我该怎么办呢?我想发送我的变量$this->load->view('menu/menu',$data);

模块

public function getModules(){
    if($this->session->userdata('log')){
        $data = $this->session->userdata('log');
        $menu = array();
        $seccions = $this->module->get_rows();
        foreach ($seccions as $index => $seccion){
           $modules = $this->module->query("SELECT CONCAT('".$seccion['id']."',storelte_modulo.id) AS id,CONCAT('".base_url('assets/img/sidebar')."','/',storelte_modulo.icon) as icon, storelte_modulo.modulo AS value,storelte_modulo.seccion_id,CONCAT('".base_url()."',storelte_modulo.url) AS  url FROM storelte_modulo INNER JOIN storelte_modulo_perfil ON  storelte_modulo_perfil.modulo_id = storelte_modulo.id WHERE seccion_id = $seccion[id] AND storelte_modulo_perfil.perfiles_id = $data[id] AND storelte_modulo_perfil.STATUS = 1");
            $seccions[$index]['data']= $modules;
            if (!count($seccions[$index]['data']))
                unset($seccions[$index]);
        }
        foreach ($seccions as $item)
            array_push($menu,$item);
      $this->data['fields'] = $menu;
      $this->load->view('menu/menu',$this->data);
    }
}

HTML

  <aside class="main-sidebar">
  <section class="sidebar">
    <ul class="sidebar-menu">
     <li class="treeview">
         <?php foreach ($fields as $session) : ?>
           //code
         <?php endforeach ?>
      </li>
    </ul>
  </section>
</aside>

0 个答案:

没有答案