我想创建一个过滤用户发布内容的函数。
$postcontent = str_replace(("rn", '<br>'), ("[B]", '<b>'), self::$post);
试图将它用于str替换多个字符串,但是你可以看到它是错误的。我也尝试过:
$postcontent = str_replace(
array("rn", '<br>'),
array("[B]", '<b>'),
$self::$post
);
有什么问题?
答案 0 :(得分:1)
我用自己的自定义字符串使用了你正在做的事情 我创建了2个数组,一个用于查找,另一个用于替换,如下所示:
$search = ["fruit", "veg"];
$replace = ["pizza", "chips"];
从这里开始,我创建了要搜索的字符串:
$string = "Eating fruit and veg is good for you!";
然后使用str_replace
:
print str_replace($search, $replace, $string);
我得到了这个结果:
吃披萨和薯条对你有好处!
如您所见,使用str_replace
函数中的数组有效!
答案 1 :(得分:0)
str_replace
,字符串或字符串数组的第一个参数始终引用针。
str_replace
,字符串或字符串数组的第二个参数总是指替换。
它应该像这样工作:
str_replace(
["rn", "[B]"],
["<br>", "<b>"],
self::$post
);
如果您想知道,[...]
与array(...)
相同,虽然它是新的且使用率较低。