gpt4 book ai didi

php - 用多个替换器替换多个字符

转载 作者:行者123 更新时间:2023-12-02 05:49:35 24 4
gpt4 key购买 nike

我在整个代码中有很多这样的调用,转义了行列上的任何反引号。

htmlentities(str_replace("`", "``", $row['column']), ENT_QUOTES);

我做了一个补充,要求列替换一个#width ##。由于这些调用中的大多数发生在输出的内联中,因此我希望在一行中有一个解决方案。

我在考虑条件正则表达式 (preg_replace_callback),但这是实现该目标的最佳方式吗?所以我需要的是:用 2 个反引号替换反引号,用 2 个哈希替换哈希。 (这是为了转义)。

最佳答案

str_replace()支持数组参数:

// translation map:
$map = [
'`' => '``',
'#' => '##'
];

// what to replace:
$from = array_keys($map);

// replace by what:
$to = array_values($map);

echo htmlentities(str_replace($from, $to, $row['column']), ENT_QUOTES);

在极少数情况下,这需要您缩小代码,您可以尝试使用它:

echo htmlentities(str_replace([ '`', '#' ], [ '``', '##' ], $row['column']), ENT_QUOTES));
// ^ ^
// from what by what

关于php - 用多个替换器替换多个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25600606/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com