我的代码从html表中删除td元素并将它们输出到一行。
这是一个html表,我的代码从中提取td值:
<table width="100%" border="0" cellspacing="1" cellpadding="0" bgcolor="#006699">
<tr align="center" class="tableRow1Font">
<td width="7%">WAITLIST</td>
<td width="5%">91630</td>
<td width="11%">
ACCY <A HREF="http://www.gwu.edu/~bulletin/ugrad/accy.html#2001" target="_blank">2001</A>
</td>
<td width="5%">10</td>
<td width="16%">Intro Financial Accounting</td>
<td width="6%">3.00</td>
<td width="8%"> Zou, Y</td>
<td width="8%"><A HREF="http://www.gwu.edu/~map/building.cfm?BLDG=DUQUES" target="_blank"
>DUQUES</a> 251</td>
<td width="13%">TR<br>09:35AM - 10:50AM</td>
<td width="14%">
01/13/14 - 04/28/14
</td>
<td width="7%">
</td>
</tr>
</table>
我的代码获取这些td值并在它们自己的行上输出它们。请记住,这只是我的.html文件中的一个表。这是我的代码:
$html = file_get_html('badm.html');
$str = '';
foreach($html->find('table tr[align="center"]') as $e)
$str .= strip_tags($e->innertext) . '<br>';
echo $str;
输出看起来像这样(每行都是我的badm.html文件中的一个单独的表):
我的问题是:如何用一个逗号分隔每个td元素,同时将它们保持在上面相同的格式(在它们自己的行上)?
答案 0 :(得分:1)
$html = file_get_html('badm.html');
$str = '';
foreach($html->find('table tr[align="center"]') as $e)
{
foreach($e->find('td') as $f)
{
$str .= strip_tags($f->innertext) . ',';
}
$str = trim($str, ",");
$str .= '<br>';
}
echo $str;