我对PHP很陌生,希望有人可以帮助我:
我有一个变量字符串,如下所示,不包含任何内容或一系列单词,用逗号和空格分隔。
示例:
item1, item2, item3
通过添加与源名称相同的项目名称的img标记来替换此字符串中的单个项目的最佳/最快方法是什么?删除逗号?
以上示例应如下所示:
item1 <img src="item1.png" alt="" /> item2 <img src="item2.png" alt="" /> item3 <img src="item3.png" alt="" />
非常感谢Mike的任何帮助。
答案 0 :(得分:3)
这可以在1-liner中完成,但由于你是PHP的新手,让我们说清楚。
首先拆分字符串以获取不同项目的数组。
$itemsStr = "item1, item2, item3"; // input string
$items = explode(", ", $itemsStr); // Gets an array of items
现在遍历items数组并为每个项添加字符串:
foreach($items as $key => $val)
{
$items[$key] = $item . "<img src='$item.png' alt='' /> ";
}
$output = implode(" ", $items);
答案 1 :(得分:1)
这个preg_replace
应该这样做:
$in = 'item1, item2, item3';
$out = preg_replace('/( ?([^,]+)),?/', '$1 <img src="$2.png" alt="" />', $in);
$out
然后是:
item1 <img src="item1.png" alt="" /> item2 <img src="item2.png" alt="" /> item3 <img src="item3.png" alt="" />