如何将数组传递给Codeigniter中的主视图

时间:2016-03-23 08:29:34

标签: php codeigniter

似乎我无法将另一个函数中的数组传递到主视图中。

我的index()函数是=>

<IfModule mod_rewrite.c>
    RewriteEngine on
 RewriteBase /
 RewriteCond %{REQUEST_URI} !^/site/webroot
 RewriteRule (.*) site/webroot/$1    [L]
</IfModule>

我之前提到的功能是=&gt;

public function index()
    {


    $this->load->view('anasayfa');  


    }

有效...

我正在寻找类似=&gt;

的东西
public function pozisyon_tutma()
    {...

    ....
print_r(array_values($pozisyon));
$GLOBALS['pozisyong'] = $pozisyon;
}  

我正在寻找'anasayfa'(这是主要观点)类似于这个代码的工作=&gt;

public function index()
    {

    $this->pozisyon_tutma();
    $data['hoppa']=$GLOBALS['pozisyong'];

    $this->load->view('anasayfa', $data);   


    }

但是,此代码提供以下错误=&gt;

<?php  

print_r(array_values($hoppa));

 ?>

非常感谢所有帮助。我检查了stackoverflaw中的所有其他线程,并且在我的情况下无法使它们中的任何一个工作...谢谢大家

2 个答案:

答案 0 :(得分:2)

您应该在控制器中使用:

$data = array('key1'=>$value1, 'key2'=>$value2, 'key3'=>functionX()....);
$this->load->view('yourview.php',$data);

并且在视图中访问值数组:

echo $key1; // prints $value1.
echo $key2; // prints $value2.

此外,您可以使用$ _SESSION在CI中存储一些变量。希望它有所帮助。

答案 1 :(得分:0)

我是通过以下方式做到的=&gt;

public function index()
    {

        require('Hesaplama.php');
        $Hesaplama = new Hesaplama();
        $data['hoppa']=$Hesaplama->pozisyon_tutma();

    $this->load->view('anasayfa', $data);   


    }

有效。我退回了$ pozisyon,这是@mic建议的数组。我会保留@JP的建议。 Aulet,以防我在不久的将来需要它们。谢谢大家...