我有一个页面需要访问 www.site.com/search/all,然后我可以使用 www.site.com/page/2 3 4 ...等。如果我直接访问 www.site.com/page/2 我什么都没有,因为它没有通过第一个 url (www.site.com/search/all) 存储在 cookie 中。
我想运行所有页面并获取内容,但我只能从第一页获取内容,这是由 (www.site.com/search/all) 提供给我的。
我制作了一个 $context 并使用 session_start() 检查它是否有效,但没有成功。
这是我的代码:
<?php
require 'simple_html_dom.php';
$opts = array('http' => array('header'=> 'Cookie: ' . $_SERVER['HTTP_COOKIE']."\r\n"));
$context = stream_context_create($opts);
session_write_close(); // unlock the file
$f=10;
for($i=1;$i<=$f;$i++) {
if($i==1) {
$html = file_get_html('http://www.site.com/search/all',false,$context);
session_start();
}
else {
$html = file_get_html('http://www.site.com/page/$i',false,$context);
}
echo $i;
echo $html;
?>
$html 结果总是来自第一页,它不会转到下一个,我认为是因为 cookie。