我目前有一个动态PHP页面,它显示数据库中的值以显示如下所示的URL:
<a target="_blank" href="<?php echo($row['Virtual_Tour']); ?>"><?php echo($row['Virtual_Tour']); ?></a>
这很好用,除非数据不包含 http://。 我无法控制数据。 如何测试回显是否以 http://开头,如果没有,则插入回显以确保 URL 格式正确?
if(substr($row['Virtual_Tour'],0,7)=="http://")
{
//starts with http://, no formatting needed
}
else
{
$row['Virtual_Tour']="http://".$row['Virtual_Tour'];
}
您可以
删除现有的 http://(如果存在(,然后像下面的代码一样放置一个新的
<a target="_blank" href="<?php echo "http://".str_replace("http://","",$row['Virtual_Tour']); ?>"><?php echo "http://".str_replace("http://","",( $row['Virtual_Tour']); ?></a>
您也可以使用类似 https://来执行此操作
<a target="_blank" href="<?php echo "http://".str_replace("https://","", str_replace("http://","",$row['Virtual_Tour'])); ?>"><?php echo "http://". str_replace("https://","",str_replace("http://","",( $row['Virtual_Tour'])); ?></a>
如果我
没看错,如果您的 url 不包含您要添加它http://
,因为某些答案提供了仅像这样显示它的解决方案:
<a href="something.com">http://something.com</a>
.
如果我是对的,你可以使用它:
$string = "something.com";
$string = substr($string,0,6) != 'http://' ? "http://".$string : $string;
echo $string;
工作示例