2013-11-24 91 views
0

我創建了一個二維數組和試圖訪問每一個元素,但我收到的每個陣列的錯誤值。我只可以看到今天作爲值訪問二維數組在PHP

<?php 

$blog = array ( 
     0 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     1 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     2 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     3 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
); 

foreach($blog as $blog) 
{ 
    echo "<a href=\"#\">".$blog['by']."</a>"; 
    echo "<div class=\"blogtime\"> - ".$blog['on']."</div>"; 
    echo "<div class=\"blogtime\">Blog Post ID - ".$blog['id']; 
    echo $blog['post']; 
} 
?> 
+1

foreach($ blog as $ blog)!!!!!! –

+0

@MohamadMehdiHabibi - 你的意思是他需要使用'foreach($ blogs作爲$ blog)'或'foreach($ blog作爲$ b)'' –

+0

yes @Obmerk Kronen。爲清楚起見。 –

回答

4

as $blog將覆蓋原始$blog變量,並且您第一次可以訪問該值,但不會按預期工作。更改第二$blog其他任何事情,因爲我在你的情況做了

foreach($blog as $b) 
{ 
    echo "<a href=\"#\">".$b['by']."</a>"; 
    echo "<div class=\"blogtime\"> - ".$b['on']."</div>"; 
    echo "<div class=\"blogtime\">Blog Post ID - ".$b['id']; 
    echo $b['post']; 
} 

$blog將從

array ( 
     0 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     1 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     2 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
     3 => array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"), 
); 

array('by' => "Nilay Mehta", 'on' => "Today", 'id' => "Today", 'post' => "Today"); 
+1

+1 ..或爲了清楚起見,使用'$ blogs = array()'然後'foreach($ blogs as $ blog)' –

1

使用foreach($blog as $ind_blog)代替foreach($blog as $blog),在當前的系統嘗試$blog數組被相同變量的循環的第一次出現所取代。