一,准备环境 simple_html_dom
composer 找了很多源都没找到,我采用的是自己下载。
下载地址:https://sourceforge.net/projects/simplehtmldom/
将 simple_html_dom.php 上传到 根目录/app/LIb/
并修改 composer.json 找到 autoload 引入类库
"autoload": {
"psr-4": {
"App\\": "app/"
},
"classmap": [
"database/seeds",
"database/factories",
"app/Lib/simple_html_dom.php" //增加
]
},
准备工作完成。
二,使用
//$content 为 包含 table 的页面源码
private function get_table($content ){
//echo "Start table2csv".PHP_EOL;
$html = new simple_html_dom();
@$html->load($content);
$re = [];
$csv = "";
$fp = fopen ( '示例.csv' , 'w' );
foreach($html->find('tr') as $element)
{
$th = array();
foreach( $element->find('th') as $row)
{
$th [] = $row->plaintext;
}
if(!empty($th)){
$re[] = $th;
fputcsv ( $fp , $th );
}
$td = array();
foreach( $element->find('td') as $row)
{
$td [] = $row->plaintext;
}
if(!empty($td)){
$re[] = $td;
fputcsv ( $fp , $td);
}
}
fclose( $fp );
return $re;
//echo "end table2csv".PHP_EOL;
}
保存文件效果