0

我目前有一个动态 PHP 页面,它显示来自数据库的值以显示如下 URL:

<a target="_blank" href="<?php echo($row['Virtual_Tour']); ?>"><?php echo($row['Virtual_Tour']); ?></a>

除非数据不包含 http://,否则这很有效。我无法控制数据。如何测试以查看 echo 是否以 http:// 开头,如果不是则插入以确保 URL 格式正确?

4

3 回答 3

1
if(substr($row['Virtual_Tour'],0,7)=="http://")
{
  //starts with http://, no formatting needed
}
else 
{
  $row['Virtual_Tour']="http://".$row['Virtual_Tour'];
}
于 2013-10-08T14:45:39.180 回答
0

如果我理解正确,如果您的 url 不包含http://您想要添加它,因为一些答案提供了解决方案来仅显示它

<a href="something.com">http://something.com</a>

如果我是对的,你可以使用这个:

$string = "something.com";
$string = substr($string,0,6) != 'http://' ? "http://".$string : $string;
echo $string;

工作示例

于 2013-10-08T14:48:06.470 回答
0

您可以删除现有的 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>
于 2013-10-08T15:01:38.410 回答