我正在尝试替换字符串,但它像一个循环一样工作
$especiais = ["b", "c", "k", "g", "j", "d", "f", "a", "e", "m", "i", "y", "h", "l", "p", "q", "n", "x", "o", "r", "z", "u", "v", "w", "s", "t"]; $certo = ["pn", "veh", "veh", "ged", "ged", "gal", "or", "un", "graph", "tal", "gon", "gon", "na", "ur", "mals", "ger", "drux", "pal", "med", "don", "ceph", "van", "van", "van", "fam", "gisg"]; $resultado = str_replace($especiais, $certo, $phrase);
示例代码返回:OL返回medvanandon
我需要的确切结果是OL返回MEDUR
我需要每个字母都准确地被对应的字母替换,但在这段代码中,替换重复了多次。
在
str_replace()
PHP文档中有一条通知,内容如下:相反,我建议使用
strtr()
,它允许你以(from => to)的格式传递一个“替换”数组,如下面的示例:这将提供您期望的输出,如下所示:
演示:https://tehplayground.com/5YSxPYZfreiPTz9K