我对PHP很陌生,所以请耐心等待.
我有一个带有表情符号的数组,我想用正确的图像替换表情符号文本,所有这些都在for循环中.所以我正在尝试使用我的文本变量并执行str_replace,但我不确定如何在表情符号被更改后显示文本.
这是我的代码:
$content = ":D Here is a sample sentence for this example :)";
$emotes = array(
[":)","<img class='emoticon' src='smile.png'>"],
[":D","<img class='emoticon' src='grin.png'>"],
);
for($i=0;$i<count($emotes);$i++) {
$contentWithEmotes = str_replace($emotes[$i][0], $emotes[$i][1], $content);
}
print $contentWithEmotes;
Run Code Online (Sandbox Code Playgroud)
这个问题是它只显示数组中的最后一个图像,当我希望它显示它们时.我该如何使用正确的图像显示内容?
在此先感谢您的帮助.
像这样重构你的数组:
$emotes = [
":)"=>"<img class='emoticon' src='smile.png' />",
":D"=>"<img class='emoticon' src=grin.png' />"
];
Run Code Online (Sandbox Code Playgroud)
然后使用strtr:
$contentWithEmotes = strtr($content,$emotes);
Run Code Online (Sandbox Code Playgroud)