用joomla上的绝对替换相对图像src

时间:2013-02-23 10:27:22

标签: joomla relative-path str-replace absolute-path

我需要邮寄一些存储在数据库中的html代码。

对于要显示的图像,我需要用绝对路径替换相对路径。

我有一个名为$ display的变量,它包含HTML。

这样做我试着休息:

$root=JURI::root();
 str_replace('src="/images', 'src="' . $root .'images', $display); 

var_dump($display);//for testing

$ display似乎没有改变。

更新1

我已被建议将代码更改为:

$root=JURI::root();
$display = str_replace('src="/images', 'src="' . $root .'images', $display)

我也试过

$display = str_replace('src="/images', 'src="' . $root .'images', $display);

但是 - 两者都还没有奏效:[

改变了

src="/images/joomla_black.gif"

src="http://images/joomla_black.gif"

没有完整的网址:[

任何建议?

更新2

补充说:

echo('non fixed:');
var_dump($display);

$root=JURI::root();
$display = str_replace('src="/images', 'src="' . $root .'images', $display);
//fix images in display to absolute paths for mailing


echo('fixed:');
var_dump($display);

两个显示字符串在输出

上看起来相同

1 个答案:

答案 0 :(得分:0)

str_replace将返回值,它不会更改$display变量,因此您需要执行

$display = str_replace('src="/images', 'src="' . $root .'images', $display);

如果joomla在子文件夹中,您发布的另一行将返回根域,我认为您不需要