0

簡単な質問:

そこで、クロール コードをたくさん書いたのですが、クロールしている Web サイトの 1 つには、タグ間に改行が含まれていませんでした。すでにたくさんのコードを書いているので、preg_replace を使って簡単にハックし、中断したところから続けました。問題は、 fopen() が文字列に対して機能しないことです...

$string = file_get_contents($url);
$string = preg_replace("/>(^\n|\n+)?</", ">\n<", $string);
$file = fopen($string, 'r');
while(($buffer = fgets($file)) != false) { ... }

では、ループを書き直さずに、これにどのようにアプローチすればよいでしょうか?

助けてくれてありがとう!

ロブ

4

1 に答える 1

0

取得したページの各行を反復しようとしているようです。explode()関数を使用して文字列を改行で配列に分割することにより、文字列にプルした後にこれを行うことができます。

foreach (explode("\n", $string) as $line) {
    ....
}
于 2013-03-30T02:35:51.220 に答える