我希望我可以帮助解决我遇到的问题。
我使用php get meta标签功能来查看网站列表中是否存在标签,只要有没有HTTP的域,就会出现问题。
理想情况下,我想要添加HTTP,如果它不存在,我还需要一个解决方法,如果域有HTTPS,这就是我正在使用的代码。
如果我登陆域中没有HTTP的网站,我会收到此错误。
警告:get_meta_tags(www.drhugopavon.com/):无法打开流:第16行的C:\ xampp \ htdocs \ webresp \ index.php中没有此类文件或目录
f
答案 0 :(得分:2)
您可以使用parse_url()
检查元素scheme
是否存在。如果没有,你可以添加它:
$urls = array(
'https://www.smilesbycarroll.com/',
'https://hurstbournedentalcare.com/',
'https://www.dentalhc.com/',
'https://www.springhurstdentistry.com/',
'https://www.smilesbycarroll.com/',
'www.drhugopavon.com/'
);
$urls = array_map(function($url) {
$data = parse_url($url);
if (!isset($data['scheme'])) $url = 'http://' . $url ;
return $url;
}, $urls);
print_r($urls);
答案 1 :(得分:1)
您可以使用它来检查域名是否有http
foreach($urls as $url){
if(strpos($url, "http") === FALSE) //check if the url contains http and add it to the beginning of the string if it doesn't
$url = "http://" . $url;
$tags = get_meta_tags($url);
}
另一个更简单的选择是在URL中检查://
foreach($urls as $url){
if(strpos($url, "://") === FALSE) //check if the url contains http and add it to the beginning of the string if it doesn't
$url = "http://" . $url;
$tags = get_meta_tags($url);
}
或者您可以使用像Wild Beard建议的正则表达式
答案 2 :(得分:0)
你知道什么是搞笑的,我以为是因为它有http但是我把error_reporting(0);在我的原始代码中它起作用,因为我想要它哈哈。