2011-03-18 195 views
0

我有一個php數組我想從中獲取特定的數據。通過PHP陣列

[vxs_data] => Array 
    (
     [0] => Array 
      (
       [data] => Array 
        (
         [0] => fsafas 
         [1] => 603 
         [2] => 39 
         [3] => 81 
         [4] => 12 
         [5] => 43 
         [6] => 186 
         [7] => 97 
         [8] => 129 
        ) 

      ) 

     [1] => Array 
      (
       [data] => Array 
        (
         [9] => fsdfsa 
         [10] => 60 
         [11] => 30 
         [12] => 184 
         [13] => 12 
         [14] => 7 
         [15] => 176 
         [16] => 132 
         [17] => 119 
        ) 

      ) 

     [2] => Array 
      (
       [data] => Array 
        (
         [18] => fsafsa 
         [19] => 60 
         [20] => 3121 
         [21] => 18 
         [22] => 11 
         [23] => 0 
         [24] => 199 
         [25] => 140 
         [26] => 117 
        ) 

      ) 

     [3] => Array 
      (
       [data] => Array 
        (
         [27] => dada 
         [28] => 60 
         [29] => 27 
         [30] => 11 
         [31] => 22 
         [32] => 1 
         [33] => 22 
         [34] => 157 
         [35] => 98 
        ) 

      ) 

     [4] => Array 
      (
       [data] => Array 
        (
         [36] => ASKLMSDAS 
         [37] => 60 
         [38] => 232 
         [39] => 11 
         [40] => 23 
         [41] => 4 
         [42] => 32 
         [43] => 141 
         [44] => 98 
        ) 

      ) 

這個數組的內容。我想獲得在表(TD)的數據,因此會是這樣:

<tr> 
    <td><a href="#">ASKLMSDAS</a></td><td>33</td>... 
</tr> 
<tr> 
    <td><a href="#">dada</a></td><td>33</td>... 
</tr> 

所以我想那些第一數據列,如「ASKLMSDAS」「達達」一個make鏈接。所以我需要做一些如果子句可能和foreach?

非常感謝和對我的英語感到抱歉。

+0

如果'data'陣列將不會改變在表'td's'的記錄排序,你可以使用像水木清華'「​​」。 implode('​​',$ data_array)。 ''',所以你會得到行字符串) – 2011-03-18 06:25:14

回答

0
$array = array_reverse($array); 

foreach($array as $childArray) 
{ 
    echo '<tr><td><a href="#">'; 
    echo current($childArray['data']); // write other html as you want, this will give you the element what you want 
    echo '</a></td><td>33</td>...</tr>'; 
} 
+0

任何倒票的理由? – Gaurav 2011-03-18 06:31:02

+0

嗯,我沒有downvote,但我不認爲他問如何扭轉陣列,他問如何遍歷它並輸出表。我認爲在他的例子中可能會像這樣結束,因爲當他輸入想要的輸出時,他只是擡頭看看他可以看到的最後兩個數組元素。 – Phoenix 2011-03-18 06:33:18

+0

而不是克隆一個數組,因此你可以'array_shift'而不改變原始的,你可以直接用'current()'訪問第一個元素(這是最初的第一個元素) – 2011-03-18 06:35:56

0

這應該工作:

foreach ($mliiga_data as $row){ 
    $linktext = $row[data][0]; 
    // 
    // Dispaly linktext 
    // 
} 
1

不完全相信你會爲了什麼,但繼承人一個非常一般的二維數組的內容製作表格的方式。希望你可以調整它做你想做的事情。

echo "<table>"; 
foreach($smliiga_data as $row_k => $row_v) 
{ 
    echo "<tr><td><strong>$row_k</strong></td>"; 
    foreach($row_v['data'] as $k=>$v) 
    { 
     $str = is_int($v) ? "$k: $v" : "<a href='#'>$k: $v</a>"; //this makes link for the ones that are not numbers 
     echo "<td>$str</td>"; 
    } 
    echo "</tr>"; 
} 
echo "</table>";