我有一个像
这样的字符串 $str="<a href='https://www.google.com'>Google</a>Test url
<a href='https://www.twitter.com'>Twitter</a>Sample content
<a href='example.com'>Example</a>.....
...................................";
我想替换超链接中的网址,如下所示,
$result="<a href='http://my_url.com/https://www.google.com'>Google</a>Test url
<a href='http://my_url.com/https://www.twitter.com'>Twitter</a>Sample content
<a href='http://my_url.com/example.com'>Example</a>
..................................................
...............................";
我的意思是,每个网址都是我网址的一部分。我可以使用preg_replace(),请帮帮我
答案 0 :(得分:1)
尝试str_replace
喜欢
$arr1 = array('https://www.google.com','https://www.twitter.com','example.com');
$arr2 = array('http://my_url.com/https://www.google.com','http://my_url.com/https://www.twitter.com','http://my_url.com/example.com');
$str="<a href='https://www.google.com'>Google</a>Test url
<a href='https://www.twitter.com'>Twitter</a>Sample content
<a href='example.com'>Example</a>";
$newStr = str_replace($arr1 , $arr2 , $str);
echo $newStr;
如果网址是动态的,则要评论,那么这些数组就像
$arr1 = array($url1,$url2,$url3);
$arr2 = array('http://my_url.com/'.$url1,'http://my_url.com/'.$url2,'http://my_url.com/'.$url3);
或者只是尝试一下
$newStr = str_replace("href='" , "href='http://my_url.com/" , $str);