如何使用PHP在“for”循环中cURL多个连续页面?

时间:2013-12-13 06:47:19

标签: php curl

例如,我想将8个文本文件从http://example.com/0.txt卷曲到http://example.com/7.txt并在循环中回显它们。以下是我目前的代码。

for ($i=0; $i < 6; $i++) { 
    $curl = curl_init();
    $post_url = 'http://example.com/' . i . '.txt';
    curl_setopt($curl, CURLOPT_URL, $post_url);
    curl_setopt($curl, CURLOPT_HEADER, 0);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($curl);
    curl_close($curl);
    echo '<article>' . $data . '</article>';
}

似乎传统上key CURLOPT_URL的值应该直接写在第4行,但方式不符合我的要求。我尝试用两个点分隔字符串并将循环控制变量i插入到两个字符串中,以形成第三个参数,但它不起作用。

然后我尝试将该语句从行中取出,并预先设置一个变量,它将两个字符串和一个数字变量组合在一起,并将变量放在curl_setopt()函数中作为第三个参数。它不起作用。

当我搜索“php curl loop”或“curl in loop with parameter”或其他内容时,Google几乎无法向我提供有用的信息。

所以最终我在这里寻求帮助:(

如果有人愿意提供解决方案,请提前致谢。

1 个答案:

答案 0 :(得分:2)

不确定是不是因为拼写错误而是试图解决这个问题。检查,

$post_url = 'http://example.com/' . $i . '.txt'; // You miss '$' here
                                    ^