PHP: str_replace 多个案例

PHP: str_replace multiple cases

我想创建一个功能来过滤哪些用户 post。

$postcontent = str_replace(("rn", '<br>'), ("[B]", '<b>'), self::$post);

尝试用它来替换多个字符串的str,但是你能看出它是错误的吗?我也试过:

$postcontent = str_replace(
array("rn", '<br>'),
array("[B]", '<b>'),
$self::$post
);

怎么了?

我使用了你正在做的我自己的自定义字符串。
我创建了 2 个数组,一个用于查找,一个用于替换,如下所示:

$search = ["fruit", "veg"];
$replace = ["pizza", "chips"];

然后我从这里创建了要搜索的字符串:

$string = "Eating fruit and veg is good for you!";

然后这样使用 str_replace

print str_replace($search, $replace, $string);

我得到了这个结果:

Eating pizza and chips is good for you!

如您所见,在 str_replace 函数中使用数组是可行的!

str_replace 的第一个参数,字符串或字符串数​​组,总是指针。

str_replace 的第二个参数,字符串或字符串数​​组,总是指替换。

它应该像这样工作:

str_replace(
    ["rn",   "[B]"],
    ["<br>", "<b>"],
    self::$post
);

如果您想知道,[...]array(...) 相同,尽管它是新的且很少使用。