从php数组中提取链接
我试图从数组中隔离链接,但在foreach循环中它对我不起作用。它将两个元素作为链接进行排序从php数组中提取链接,php,validation,url,Php,Validation,Url,我试图从数组中隔离链接,但在foreach循环中它对我不起作用。它将两个元素作为链接进行排序 $services=array('Bakery','www.google.com'); foreach($services as $service): if (!filter_var($service, FILTER_VALIDATE_URL) === false) { $service = $service; } else { $service =
$services=array('Bakery','www.google.com');
foreach($services as $service):
if (!filter_var($service, FILTER_VALIDATE_URL) === false) {
$service = $service;
} else {
$service = '<a href='.$service.'>'.$service.'</a>';
}
echo $service;
endforeach;
我只想超链接google.com,而不是bakery文本,但我会在两者上都获得链接,所以如果部分不起作用,它会考虑将bakery作为链接
$services=array('Bakery','www.google.com');
foreach($services as $service):
if (!filter_var($service, FILTER_VALIDATE_URL) === false) {
$service = $service;
} else {
$service = '<a href='.$service.'>'.$service.'</a>';
}
echo $service;
endforeach;
$services=array('Bakery','www.google.com');
foreach($services as$service):
如果(!filter\u var($service,filter\u VALIDATE\u URL)==false){
$service=$service;
}否则{
$service='';
}
回音$服务;
endforeach;
以下语句存在问题:
if (!filter_var($service, FILTER_VALIDATE_URL) === false)
^ ^^^^^
这里使用的是双负片,即代码>运算符,表示“不”,您使用的是“false”
要么删除代码>或将“false”更改为“true”
您还需要向希望使用的url添加http://
,以便正确验证
$services=array('Bakery','www.google.com');
谷歌链接将失败。如果要验证,需要将其更改为:
$services=array('Bakery','http://www.google.com');
你意识到这里有一个解析错误,分号丢失了,但这不是问题,我添加了它。我的问题不是关于解析或语法错误,你必须详细描述你想要得到的结果,而不是你现在得到的结果。我已经测试了你的代码,并得到了结果。你的编辑和原始帖子没有描述这一点,你不能指望我们/我知道你想要得到什么。为了验证你的url,你必须。。。http://www.google.com我早些时候重新打开了你的问题,你没有费心回复我,也没有回答给出的答案@user2477139我看到编辑的唯一原因是我重新访问了它。