我正在开展一个项目,我需要从同一个网站上抓取一些内容,但需要一个子文件夹,然后存储它。我知道它并不理想,但对于客户来说,这是最好的方法。
我需要更改从相对于绝对网址的所有引用
所有参考文献(图像,css,js)都与两者相对:
...这意味着他们不能在我的子文件夹中工作。我需要一个与这些引用上的正则表达式匹配的函数,并替换路径。
当我尝试这个时:
function getRelativeContent($url) {
$page = file_get_contents($url);
//url needs trailing /
if (substr($url, -1, 1) != "/")
$url .= "/";
$page = preg_replace('/src="(\/)?([\w_\-\/\.\?&=@%#]*)"/i','src="' . $url . '$2"', $page);
$page = preg_replace('/href="(\/)?([\w_\-\/\.\?&=@%#]*)"/i','href="' . $url . '$2"', $page);
return $page;
}
echo getRelativeContent($url);
然后这些网址不起作用:
<link href="/cassette.axd/stylesheet/fdbdaa59cb97b35f06f65fd41cb60caa3975cc0f/forbrug-rwd_(max-width 767px)" type="text/css" rel="stylesheet" media="(max-width: 767px)">
<img src="https://www.domain.dk/~/media/2561BD6AFBD64402877E4ACED01F97FD.ashx" />