0

多漁政船數組值我在PHP中的多維數組這樣爲了獲得在PHP

$shop = array( 
       array("name","point","number"), 
       array('Ranjit', 1.25 , 15), 
       array('Pitabas', 0.75 , 25), 
       array('Khela', 1.15 , 7) 
      ); 

現在我已經表明這樣的

name-> ranjit 
Point-> 1.25 
number->15 
name->Pitabas 
Point->0.75 
number->25 
name->Khela 
Point->1.15 
number->7 

我試圖爲輸出循環,但我可以得到嵌套forloop的結果。請幫我解答。

+1

請分享你試過循環。也許有一個可以修復的簡單錯誤。它表明你真的嘗試過。 – Wiseguy 2012-08-13 19:11:48

+0

我發佈了一個答案,並且一旦我知道你至少先試了一下,它就會取消刪除。 – Matt 2012-08-13 19:14:16

+3

也許這只是我,但當人們問我'因爲它'比'請'更短時,我只想告訴他們'不',因爲它比'是'短。 – Quasdunk 2012-08-13 19:14:37

回答

3

我的解決辦法:

+0

Smaht。只是,Smaht。 – FrankieTheKneeMan 2012-08-13 19:18:30

+0

不錯。我想不出'array_shift()',所以我使用「獲取第一行,跳過循環中的第一行」方法。 – Matt 2012-08-13 19:24:34

0

你知道第一行會的冠軍,所以他們分開存放:

$titles = $shop[0]; 

這會給你

$titles = array('name', 'point', 'number'); 

然後依次通過您的數組:

foreach ($shop as $index => $row) { 
    if ($index == 0) 
     continue; 

    foreach($row as $column => $item) { 
     echo $titles[$column] . " -&gt; " . $item . "<br />"; 
    } 
} 
+1

這對你的循環來說是一個奇怪的構造。你應該使用foreach($ shop,作爲$ i => $ row) - 它更容易閱讀。 – FrankieTheKneeMan 2012-08-13 19:17:24

+1

好點!我會編輯。 – Matt 2012-08-13 19:18:08

0

這是一個簡單的循環:觀察我們跳過外數組的第一個元素,它被認爲包含標題:

for ($i = 1; $i != count($shop); ++$i) 
{ 
    print $shop[0][0] . ": ". $shop[$i][0] . "\n"; 
    print $shop[0][1] . ": ". $shop[$i][1] . "\n"; 
    print $shop[0][2] . ": ". $shop[$i][2] . "\n"; 
} 
0

這應該得到所需要的輸出:

for($x = 1, $lim = sizeof($shop); $x < $lim; $x++) 
{ 
    echo $shop[0][0]."->".$shop[$x][0]."<br>"; 
    echo $shop[0][1]."->".$shop[$x][1]."<br>"; 
    echo $shop[0][2]."->".$shop[$x][2]."<br>"; 
}