2012-04-20 49 views
1

我想操纵一个图像使用PHP的路径。 该路径中有一个可变的用户目录,所以我正在努力如何写这个。爆炸与变量的字符串

伊夫用来做:

$texthtml = $content; 
if (preg_match('/<img.+src=[\'"](?P<src>.+?)[\'"].*>/i', $texthtml, $image)) { 
$promopic = $image['src']; 
} 

发现如果在我的内容的图像,并进行可变出来。这工作,但我需要改变我的代码加载图像从缩略图目录为页面加载的原因。

的图片src看起来是这样的:​​

但我想它是这样的:

"/uploads/userdirs/admin(variable)/mcith/mcith_image.jpg"

添加/ mcith /和mcith_prefix的形象。 我在想它爆炸,但我不知道如何做一个可变的路径。任何指针非常感谢!

+0

强制性无法解析HTML 。 – 2012-04-20 12:52:14

+0

@Dommister请避免这样的评论。他们只会造成噪音。 – Sampson 2012-04-20 12:53:19

+0

@Havihavi你想*爆炸*(意味着闯入数组产生一个数组)字符串,或者仅仅*替换*它的一些内容导致一个新的字符串? – Sampson 2012-04-20 12:54:21

回答

1

你可以这样做很多不同的方式,但我可能会使用pathinfo()此:

$path = pathinfo($promopic); 
$thumb = $path['dirname'] . '/mcith/mcith_' . $path['basename']; 
用正则表达式评论
+0

工作很好!我必须阅读pathinfo。真棒的东西,谢谢你=) – Havihavi 2012-04-20 13:13:37

+0

@Havihavi:很高兴我能帮上忙。 :-) – FtDRbwLXw6 2012-04-20 13:18:31

0

很简单的版本,可以使用改善

preg_replace('/\/([a-zA-Z0-9]+\.[a-zA-Z0-9]{3,4})$/', '/mcith/mcith_$1', '/uploads/userdirs/admin(variable)/image.jpg');