如何更改字符串示例中的网址:
这是一个链接<a href="http://google.com.au">http://google.com.au</a>
这样的事情
此警告页面链接<a href="./warn.php?link=http://google.com.au">http://google.com.au</a>
编辑:
我要做的是接受最终用户输入的描述,他们可能会在描述中输入链接,我想更改所有链接以使其成为警告页面,警告页面为{{1 }}
字符串可能如下所示
./warn.php?site=link
好的,这就是我的尝试:
This is a awesome description <a href="google.com.au">Google</a> and this another link <a href="http://google.com.au/images">Google images</a>
答案 0 :(得分:1)
检查一下,虽然我不确定你是否真的参考了这个,但是让我知道这个案例---
$mylink = "http://google.com.au";
This a warning page link <a href="./warn.php?link=<?php echo $mylink ?>">http://google.com.au</a>
编辑版本1.0
即使是描述框数据,您也可以通过jquery或php来获取它
$mylink = $_GET['desc_name_data'];
请更具体地解决问题:)
编辑版本1.1
检查一下然后告诉我 -
echo preg_replace('(<a href="http://\S+)', '<a href="./warn.php?site='.'google.com.au'.'">google.com.au', $descc);
答案 1 :(得分:0)
您可以查看preg_replace()
。
答案 2 :(得分:0)
我不确定我理解你的问题,但urlencode可能会有所帮助。
<a href="./warn.php?link=<?php echo urlencode('http://google.com.au'); ?>">http://google.com.au</a>
如果不是这样,那么请对您尝试实现的目标和what you have tried进行更具体的说明。
编辑:
好的,你可以尝试HTML parser从链接中提取href,然后适当地重写。这可能比正则表达式更可靠。
如果您将网址作为查询字符串传递,则仍应添加urlencode。