代码中
//将HTML表格的每行每列转为数组,采集表格数据
<?
function get_td_array($table) {
$table = preg_replace("'<table[^>]*?>'si","",$table);
//OSPHP.COm.CN
$table = preg_replace("'<tr[^>]*?>'si","",$table);
$table = preg_replace("'<td[^>]*?>'si","",$table);
$table = str_replace("</tr>","{tr}",$table); //开源代码OSPhP.COm.CN
$table = str_replace("</td>","{td}",$table);
//去掉 HTML 标记
$table = preg_replace("'<[/!]*?[^<>]*?>'si","",$table); //OSPHP.COM.Cn开源
//去掉空白字符
$table = preg_replace("'([rn])[s]+'","",$table);
$table = str_replace(" ","",$table);
//开源代码OSPHP.COM.Cn
$table = str_replace(" ","",$table);
$table = explode('{tr}', $table);
array_pop($table); //PHP开源代码
foreach ($table as $key=>$tr) {
$td = explode('{td}', $tr);
array_pop($td);
$td_array[] = $td; //PHP开源代码
}
return $td_array;
}
?> 代码中$table = preg_replace("'<table[^>]*?>'si","",$table); 正则表达式'<table[^>]*?>'si中?不明白什么意思,以及后面si的作用? 还有怎样将html代码抓取到变量$table中? 感谢~~~~~~~
//将HTML表格的每行每列转为数组,采集表格数据
<?
function get_td_array($table) {
$table = preg_replace("'<table[^>]*?>'si","",$table);
//OSPHP.COm.CN
$table = preg_replace("'<tr[^>]*?>'si","",$table);
$table = preg_replace("'<td[^>]*?>'si","",$table);
$table = str_replace("</tr>","{tr}",$table); //开源代码OSPhP.COm.CN
$table = str_replace("</td>","{td}",$table);
//去掉 HTML 标记
$table = preg_replace("'<[/!]*?[^<>]*?>'si","",$table); //OSPHP.COM.Cn开源
//去掉空白字符
$table = preg_replace("'([rn])[s]+'","",$table);
$table = str_replace(" ","",$table);
//开源代码OSPHP.COM.Cn
$table = str_replace(" ","",$table);
$table = explode('{tr}', $table);
array_pop($table); //PHP开源代码
foreach ($table as $key=>$tr) {
$td = explode('{td}', $tr);
array_pop($td);
$td_array[] = $td; //PHP开源代码
}
return $td_array;
}
?> 代码中$table = preg_replace("'<table[^>]*?>'si","",$table); 正则表达式'<table[^>]*?>'si中?不明白什么意思,以及后面si的作用? 还有怎样将html代码抓取到变量$table中? 感谢~~~~~~~
后面的'si'为修正符,'s'表示把字符串视为单行,换行符作为普通字符处理,'i'表示不区分大小写
$table=file_get_contents('http://....');
i: 忽略大小写