2011-08-16 43 views
1

这是真的做我的螺母在 我传递一个多维数组这样的观点:如何一多维数组传递给视图笨

$res = $this->deliciouslib->getRecentPosts(); 

(你可以看到它的美味的API我与播放)

$结果是一个数组,print_r的($结果)给这样的事情:

我的问题是如何通过这个视图中的重复!我一直想这样的东西,

$result = $this->deliciouslib->getRecentPosts(); 
$i=0; 

foreach($result as $value) 
{     
    $val = 'val'.$i;   
    $data[$val]=$value; 
    $i++;   
} 

$this->load->view('delicious_view',$data); 
return true; 

,然后在视图类似...

foreach ($val0 as $value) 
{ 
    echo $value."<br>"; 
} 

显然,这是不行的,因为我需要所有的“$ VAL(我)“!
人我BrainCramp!我可能在家里跳舞答案,像篮球圆箍,但我完全尽管如此stumnped。任何想法如何,我可以遍历整个数组throught,将是最有帮助的....

回答

2

假设$this->deliciouslib->getRecentPosts()返回一个迭代,你可以尝试:

$data['delicious_posts'] = $this->deliciouslib->getRecentPosts(); 

,并把它传递给视图正常。如果你想传递一个

$data = array('foo' => 'bar'); 
$this->load->view('myview', $data) 

// In your view 
echo $foo; // Will output "bar" 

所以:然后,就认为你这样做:

foreach($delicious_posts as $delicious_post){ 
    print_r($delicious_post); 
} 
+0

感谢乡亲,两个答案帮了我,但豪尔赫是正确的金钱。 – eamoc

2

在笨,当你传递一个数组的视图中的每个键设置一个简单的变量数组,只需将值设置为数组:

$data = array('foo' => array('bar1', 'bar2')); 
$this->load->view('myview', $data) 

// In your view 
foreach($foo as $bar) { 
    echo $bar . " "; // Will output "bar1 bar2 " 
} 
-1

回答您的问题可能是从数组中调用数据的方式。可能的解决方案:

  1. 获取具有索引的数组中的数据。

    $data['**result**']=$this->deliciouslib->getRecentPosts(); 
    
  2. 现在由于getRecentPosts()结果是数据的阵列,通过它,以查看

    $this->load->view('view_name', $data); 
    
  3. 如果结果是一个数组,上查看页面,通过RIGHT INDEXING

    访问它
    $result[0-9]['col_name'] e.g **var_dump($result[9]['Title']**); 
    

    否则,如果它是一个对象数组,

    $result[0-9]=>col_name<br> e.g **var_dump($result[9]=>title)**;