我使用foreach回显表的内容,我得到的问题是日期始终位于页面顶部,所以当我查看我的一行预览时,我只得到日期而已。如果我删除日期就可以了,你可以看到模板的第一行。所以我试图从预览中删除日期标记。 我使用下面的代码,但它似乎没有做很多,据我所知,我有正确的事情吗?。
echo '<div class="messagerow">';
// this pulls the message from the foreach above it
$emlmsg = $row->emailformmessage;
// I am trying to remove the date by replacing it with the blank contents of this string value.
$dateremove = '';
// This is the str_replace that is supposed to remove the {date} tag along with the paragraph tags it is wrapped in.
$emlmsgfiltered = str_replace(array('<p>{date}</p>'), array($dateremove), $emlmsg);
// I then echo the filtered message here, minus the date....but its still there ??
echo $emlmsgfiltered;
echo '</div>';
编辑&gt;&gt;&gt;&gt;&gt;&gt;
As requested, this is the html code
<p>{date}</p>
<p>Dear {name} thankyou for your order, if you need any more oil we will be happy to provide you with a competitive quote.</p>
<p>Kind Regards</p>
{createdby}
答案 0 :(得分:1)
为什么数组围绕str_replace()中的第一个值?你应该引用一个数组元素
str_replace('<p>{date}</p>',$dateremove,$emlmsg)
答案 1 :(得分:1)
在我看来,'<p>{date}</p>'
没有找到。您可以尝试通过键入内容$ date = date('Y-m-d')然后'<p>'.$date.'</p>'
或"<p>$date</p>"
来重新创建日期
但是,在所有情况下,日期可能无法正确匹配。
您也可以尝试从某个地方提取日期。那将是理想的。