快速提问:
所以我写了一堆抓取代码,但是我正在抓取的一个网站没有在标签之间包含换行符。由于我已经编写了一堆代码,所以我使用preg_replace进行了快速修改,并从我离开的地方继续。问题是,fopen()不能处理字符串…
$string = file_get_contents($url);
$string = preg_replace("/>(^'n|'n+)?</", ">'n<", $string);
$file = fopen($string, 'r');
while(($buffer = fgets($file)) != false) { ... }
那么,在不重写循环的情况下,我该如何处理这个呢?
谢谢你的帮助!
Rob似乎您正在寻找遍历获取的页面的每行。您可以在将其拉入字符串后使用explode()
函数将字符串在换行符处分隔成数组来完成此操作:
foreach (explode("'n", $string) as $line) {
....
}