php simple_html_dom 一个iconv错误引起解析中断的问题,貌似内存溢出
环境:
$pageNum = 8;
for ($i = 1; $i < $pageNum; $i++) {
$html = new simple_html_dom();
$host = 'http://xxxxxx';
$url = sprintf ($this->urlFormat, $i);
$html->load_file($url);
echo "<br>" . $i . "start1 ".$url."<br>";
$mainHtml = $html->find('div[class=main]', 0);
...
...
$html->clear();
unset($html);
}
循环出现错误
Notice: iconv(): Detected an illegal character in input string in D:\Workspace\PHP\admin_data\simple_html_dom.php on line 790
然后下一个循环就会中断停止,不再正常运行,$html->load_file($url);将失败,之后如下提示
Fatal error: Call to a member function find() on a non-object in D:\Workspace\PHP\admin_data\simple_html_dom.php on line 1113
完了后面解析我无法再完成了。
谷粉+百度,关于iconv修改的尝试都是老样子。
之后已经想到可能是$html没有释放的问题,又搜了一会,使用将$html = new simple_html_dom();替换为如下代码,解决
$html = new simple_html_dom(); //干掉不需要
$host = 'http://xxxxxx';
$url = sprintf ($this->urlFormat, $i);
$html = file_get_html($url);
其他照旧,终于iconv()即使失败,也能继续解析了。也就是可下这个结论如果在解析中途出错,$html = new simple_html_dom(); 这中方式可能无法释放。
最新文章
- 深入浅出Hyper-V网络虚拟化技术
- A ship is always safe at the shore - but that is not what it is built for.
- 基础笔记10(IO 1.7try-with-resource) 装饰模式
- linux 挂载光盘:mount: you must specify the filesystem type
- CSS 使用推荐
- 剑指Offer 二叉搜索树的后序遍历序列
- C# 使用js正则表达式,让文本框只能输入数字和字母,最大长度5位
- oracle手动启动服务
- 1989-C. 数字三角形
- QT5.1.1中MinGW4.8的环境变量配置
- Struts2 result type
- JavaScript之共享onload
- 17.1.1.9 Introducing Additional Slaves to an Existing Replication Environment 引入额外的Slaves 到一个存在的复制
- Dropwizard入门及开发步骤
- 2019金融科技风往哪儿吹?蚂蚁金服联合20余家金融机构预测新年热点:5G、区块链上榜
- js无间隙向上滚动
- springmvc 跳转页面或者返回json
- tomcat7 内存溢出 java.lang.OutOfMemoryError 处理方法
- 一个GD初二蒟蒻的自我介绍
- Windows下MySQL数据目录修改