[英]parsing html table tr tag missing
我需要使用php解析一个html
表。 但是在第一条记录之后,最后几条记录没有开始<tr>
标记。 以下是代码:
<tr class="odd">
<td class="dragHandle"></td>
<td class="checkbox"></td>
<td>4228651391</td>
<td>Payment</td>
<td>01850147130</td>
<td>01670808080</td>
<td>10</td>
<td>lcghs786</td>
<td>1</td>
<td>18-feb-16 21:37:52</td>
</tr>
<td class="dragHandle"></td>
<td class="checkbox"></td>
<td>4226429613</td>
<td>Payment</td>
<td>01957814120</td>
<td>01670808080</td>
<td>5</td>
<td>aims777</td>
<td>1</td>
<td>18-feb-16 17:44:12</td>
</tr>
<td class="dragHandle"></td>
<td class="checkbox"></td>
<td>4226292073</td>
<td>Payment</td>
<td>01957814120</td>
<td>01670808080</td>
<td>10</td>
<td>AIMS786</td>
<td>1</td>
<td>18-feb-16 17:28:02</td>
</tr>
我尝试使用simple_html_dom
库但它只返回第一条记录的array
。 请帮我解析如何解析所有记录并放入一个array
。 谢谢
首先,您需要通过此库填充缺少的tr
到您的html。
然后使用下面的代码
$content = str_get_html(your html);
$tr_array = $content->find('tr');
foreach($tr_array as $tr) {
//process your tr data
};
最后我可以解决这个问题。 感谢@Kelvin的暗示
我已经采取了错误的静态html页面[output.html]并将其提供给名为'tidy'的html修复应用程序。 为了将数据解析为PHP'数组',我在phpclasses.org中使用了Wojtek Jarzecki的table2arr库。
修正了以下工作代码。
require_once'table2arr.php';
$字符串=的file_get_contents( 'output.html');
shell_exec(“tidy.exe output.html> test.html”);
$ clean_html =的file_get_contents( '的test.html');
$ g = new table2arr($ clean_html);
$ CNT = $ G-> TableCount的;
为($ I = 0; $我
$ G-> getcells($ⅰ);
的var_dump($ G->细胞); }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.