2011-11-29 87 views
0

我正在使用SimpleHTMLDOM從我的學校名冊中獲取信息。問題是表結構很難解析,我正在尋找一些幫助。SimpleHTMLDom通過表迭代

表看起來是這樣的: http://pastebin.com/xg3mRAHw

的代碼看起來是這樣的: http://pastebin.com/gWW7WyDA

結果看起來是這樣的(也包括我多麼想要的結果看起來像!):

當前格式:

 
array 
    3 => 
    array 
     '28-11-2011' => 
     array 
      0 => string '08.45-10.30 ' (length=12) 
      1 => string 'CMD-1 HC interaction design' (length=27) 
      2 => string 'CMD-1vt-p2.01 - CMD-1vt-p2.18 ' (length=30) 
      3 => string 'OVk45' (length=5) 
      4 => string 'J.P. van Leeuwen' (length=16) 
      5 => string '10.30-12.15 ' (length=12) 
      6 => string 'CMD-1 Training samenwerken' (length=26) 
      7 => string 'CMD-1vt-p2.09 - CMD-1vt-p2.10 ' (length=30) 
      8 => string 'SL433' (length=5) 
      9 => string 'B. Hartman' (length=10) 

通緝格式:

 
array 
    3 => 
    array 
     '28-11-2011' => 
     array 
      0 => 
      array 
       'time' => string '08.45-10.30 ' (length=12) 
       'name' => string 'CMD-1 HC interaction design' (length=27) 
       'group' => string 'CMD-1vt-p2.01 - CMD-1vt-p2.18 ' (length=30) 
       'place' => string 'OVk45' (length=5) 
       'teacher' => string 'J.P. van Leeuwen' (length=16) 
      1 => 
      array 
       'time' => string '10.30-12.15 ' (length=12) 
       'name' => string 'CMD-1 Training samenwerken' (length=26) 
       'group' => string 'CMD-1vt-p2.09 - CMD-1vt-p2.10 ' (length=30) 
       'place' => string 'SL433' (length=5) 
       'teacher' => string 'B. Hartman' (length=10) 

問題是,我不明白如何才能使用(僅)SimpleHTMLDOM獲得此結果。我相信我在這裏錯過了一些東西,因爲我接近數組的最終標記。讓它像真正未來的例子一樣顯示出來的最後一步是我無法工作的東西。

有人可以給我一些關於如何繼續並按照我想要的方式獲取數組的技巧嗎?我也一直在看XSL,但在這一點上對我來說太複雜了。

回答

1

您還需要分割tr數組。

$count = 0; 
foreach ($table as $tr) { 
... 
    $output[$info['week']][$info['date']][$count] = array(); 
    $count++; 
... 
$output[$info['week']][$info['date']][$count][] = $td->innertext; 

現在作爲「時間」,「名」,「組」等價值觀,我不認爲那些在任何地方的XML,所以我想你就只能維持在一個內計數追加td->innertext

+0

我已經設法得到我想要的結果,但我不得不尋找不同的方法來解析HTML文檔。這是表格示例(數據替換),我不知何故需要解析:http://pastebin.com/zNu7iTTJ SimpleHTMLDom似乎不能正確解析此問題,併爲我似乎做了詭計。 – user1071524