SimpleHTMLDom iteration through table



我使用SimpleHTMLDOM从我的学校花名册获取信息。问题是表结构很难解析,我正在寻找一些帮助。

表是这样的:http://pastebin.com/xg3mRAHw

代码看起来像这样:http://pastebin.com/gWW7WyDA

结果看起来像这样(也包括我想要的结果看起来像!):

当前格式:<>之前数组3 =>数组' 28-11-2011 ' =>数组0 =>字符串'08.45-10.30 '(长度=12)1 => string 'CMD-1 HC交互设计'(长度=27)2 => string 'CMD-1vt-p2.01 - CMD-1vt-p2.18 '(长度=30)3 => string 'OVk45'(长度=5)4 => string 'J.P. van Leeuwen'(长度=16)5 => string '10.30-12.15 '(长度=12)6 => string 'CMD-1 Training samenwerken'(长度=26)7 => string 'CMD-1vt-p2.09 - CMD-1vt-p2.10 '(长度=30)8 => string 'SL433' (length=5)9 => string 'B. Hartman' (length=10)之前

想要的格式:<>之前数组3 =>数组' 28-11-2011 ' =>数组0 =>数组'time' => string '08.45-10.30 ' (length=12)'name' => string 'CMD-1 HC交互设计'(长度=27)'group' => string 'CMD-1vt-p2.01 - CMD-1vt-p2.18 '(长度=30)'place' =>字符串'OVk45'(长度=5)'teacher' => string 'J.P. van Leeuwen'(长度=16)1 =>数组'time' => string '10.30-12.15 ' (length=12)'name' => string 'CMD-1 Training samenwerken'(长度=26)'group' => string 'CMD-1vt-p2.09 - CMD-1vt-p2.10 '(长度=30)'place' =>字符串'SL433' (length=5)'teacher' => string 'B. Hartman' (length=10)之前

问题是,我不明白我怎么能得到这个结果使用(仅)SimpleHTMLDOM。我确信我在这里遗漏了一些东西,因为我已经接近数组的最终标记了。最后一步是让它像未来的例子一样实际显示,这是我无法完成的工作。

有人能给我一些关于如何继续并得到数组像我想要的方式的提示吗?我也一直在研究XSL,但在这一点上对我来说太复杂了。

您还需要分割tr数组。

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

至于'time', 'name', 'group'等值,我在xml中没有看到这些值,所以我猜你只需要在附加td->innertext时维护内部计数。

最新更新