我有一个包含一些相对 URL ( file.html ) 和绝对 URL ( http://website.com/index.html ) 的数组。
我正在尝试将它们转换为绝对 URL。
所以,我要做的是遍历数组并检查 URL 是否是绝对的。如果是,那么我将其添加到仅包含绝对 URL 的新数组中。
如果它不是绝对 URL,我从当前 URL 中获取域名并将其连接到相对 URL;因此,将其设为绝对 URL,然后将其添加到仅包含绝对 URL 的数组中。
但是,当我浏览绝对 URL 数组时,我注意到了一些相对 URL。
我究竟做错了什么?
foreach($anchors as $anchor){
if(preg_match('/(?:https?:\/\/|www)[^\'\" ]*/i', (string)($anchor))){
//has absolute URL
//add to array
array_push($matchList, (string)($anchor));
}
else{
//has relative URL
//change to absolute
//add to array
$urlPrefix = preg_match('/(?:https?:\/\/|www)[^\/]*/i', $url);
$absolute = (string)(((string)$urlPrefix).((string)($anchor)));
array_push($matchList, $absolute);
}
}