0

我有 PHP 变量保存字符串,在里面我混合了具有链接和其他包含图像链接的内容,如下所示

$baseurl = "http://www.myweb.com/home/";
$content = "<a href="#"><img src="images/comment.gif" alt="Comment" /></a></p>
           <div class="thirds"> <p><b><a  href="admin/local.html" class="title">Manage your content</a></b><br /><img src ="subfolder/home.jpg" alt="home" />Lorem ipsum dolor sit amet esta pa, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt....";

我的目标是回显具有标签的所有链接的变量“内容”,src 标签,修改为绝对含义,因为包含的第一个 $content 链接必须是<a href="http://www.myweb.com/home/#"这应该与所有图像相同,例如<img src="images/comment.gif应该是<img src="http://www.myweb.com/home/images/comment.gif alt="Comment" />..任何帮助请注意,所有内容都包含在 php 字符串变量中。

4

3 回答 3

0

您可以$baseurl在 src 之前添加。还将“更改为”,以便您可以在字符串中使用“。或者如果你使用heredoc更好。

$baseurl = "http://www.myweb.com/home/";
$content = '<a href="'. $baseurl . '#"><img src="'. $baseurl . 'images/comment.gif" alt="Comment" /></a></p>
       <div class="thirds"> <p><b><a  href="admin/local.html" class="title">Manage your content</a></b><br /><img src ="'. $baseurl . 'subfolder/home.jpg" alt="home" />Lorem ipsum dolor sit amet esta pa, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt....';
于 2013-07-17T09:25:14.697 回答
0

试试这个(快速而肮脏的方式,但可能比正则表达式更快):

str_replace("href=\"", "href=\"".$baseurl, $content);
str_replace("href=\'", "href=\'".$baseurl, $content);
str_replace("src=\"", "src=\"".$baseurl, $content);
str_replace("src=\'", "src=\'".$baseurl, $content);
于 2013-07-17T09:30:41.223 回答
0

你有两种方法:

  1. 服务器端,通过 php,用正则表达式替换字符串(我不知道)。

  2. 浏览器端,通过 jquery:

    var baseurl = "http://www.myweb.com/home/";
    $("#container [src]").prop("src",function(index,oldValue){
        return baseurl+oldValue;
    });
    
    $("#container [href]").prop("href",function(index,oldValue){
        return baseurl+oldValue;
    });
    

将更多属性放入数组并在 for 循环中执行它们很容易。

“container”是包含您的内容的 dom 元素的 id。就像这样:

<div id="container">
   <a href="#"><img src="images/comment.gif" alt="Comment" /></a></p>
       <div class="thirds"> <p><b><a  href="admin/local.html" class="title">Manage your content</a></b><br /><img src ="subfolder/home.jpg" alt="home" />Lorem ipsum dolor s...
</div> 
于 2013-07-17T09:36:41.703 回答