0

我用所有字母、数字和大多数符号制作了自己的数组,并给每个数组一个数字,例如 'a' = 19; 如何用数组中的数字替换 $string 字母/数字,例如 $newString = 19202122?

$string = 'abcd';

$stringList = array(
    19 => 'a',
    20 => 'b',
    21 => 'c',
    22 => 'd',
};

$newString = 19202122;
4

3 回答 3

2

您可以使用函数 str_replace、array_keys 和 array_values。像那样:

$string = 'abcd';

$stringList = array(
    19 => 'a',
    20 => 'b',
    21 => 'c',
    22 => 'd',
};
$newString =  str_replace(array_values($stringList), array_keys($stringList), $string);
echo $newString; // 19202122 
于 2013-11-14T21:02:26.537 回答
1

以另一种方式定义数组并使用如下strtr()函数:

$string = 'abcd';

$stringList = array(
    'a' => 19,
    'b' => 20,
    'c' => 21,
    'd' => 22,
);

$newString = strtr($string, $stringList);
于 2013-11-14T21:03:03.190 回答
1

将 str_replace 与数组一起使用:

$letters = array('a','b','c','d');
$numbers = array(19,20,21,22);
$newString = str_replace($letters,$numbers,$string);
于 2013-11-14T21:01:05.953 回答