gpt4 book ai didi

php - str_replace with array_keys/array_values 返回奇怪的结果

转载 作者:行者123 更新时间:2023-12-04 00:47:16 25 4
gpt4 key购买 nike

由于某些奇怪的原因,下面的函数在输入 2 时返回 11,而我希望它返回 1。怎么了?

<?php 
function convert($v){

$arr = array(
2 => 1,
21 => 1,

3 => 2,
6 => 2,
11 => 2,
12 => 2,

4 => 3,
14 => 3,
19 => 3,

9 => 5,

1 => 11,
10 => 11,

22 => 12,
23 => 13,
14 => 14,
);

$ret = str_replace(array_keys($arr), array_values($arr), $v);
return $ret;

}

echo convert(2); // echoes 11

?>

最佳答案

你用错了函数,试试strtr相反:

function convert($v){

$arr = array(
2 => 1,
21 => 1,
...
23 => 13,
14 => 14,
);

$ret = strtr($v, $arr);
return $ret;

}

无论如何:如果您发现 PHP 函数有什么奇怪的地方,请访问它的手册页并阅读它,str_replace给出了一个具体示例来解释您的问题:Example #2 Examples of potential str_replace() gotchas

关于php - str_replace with array_keys/array_values 返回奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10437387/

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