惠!这是我的第一个问题,如果我说不对,请提前抱歉。
我想在文本中使用#pic1#(#pic2#等)插入描述文本中的图库中的图片,并将其替换为
以下是代码:
<?
$myString =$art[0][page_text];
$pics=mysql_query_assoc("select * from pages_galerie where id_page='".$id_page."'");
$count= count($pics);
for ($i=0; $i < $count; $i++) {
$search='#pic'.$i+1.'#';
$img=$pics[$i][pic];
$newString = str_replace($search, "<img src=".SITE_URL."pics/medium/".$img.">", $myString);
}
?>
它不起作用! 我做错了什么?
答案 0 :(得分:1)
试试这个 http://codepad.org/2NBlkDN9
<?
$myString =$art[0][page_text];
$myString = '#pic1# #pic2#';
//$pics=mysql_query_assoc("select * from pages_galerie where id_page='".$id_page."'");
$pics = array(
array('pic' => 'TEST1'),
array('pic' => 'TEST2'),
array('pic' => 'TEST3'),
);
$count= count($pics);
$newString = $myString;
for ($i=0; $i < $count; $i++) {
$search='#pic'.($i+1).'#';
$img=$pics[$i][pic];
$newString = str_replace($search, "<img src=".SITE_URL."pics/medium/".$img.">", $newString);
}
echo $newString;
?>
您正在$myString
中执行替换,并且每次都将其存储在$newString
中。因此,只有最后一次替换对最终输出有任何影响。我已使用$newString
初始化$myString
并在$newString
中执行了替换。