我主要使用perl
,它有一个有用的功能可以将字符列表更改为其他字符,即tr
:
$str =~ tr/[ÁÉÍÓÖŐÚÜŰ]/[AEIOOOUUU]/;
现在我需要在PHP
中实现这一点,但我发现只有str_replace
功能一个接一个地改变,如下所示:
$str = str_replace('Á', 'A', $str);
$str = str_replace('É', 'E', $str);
// etc...
PHP中有类似Perl中的单行解决方案吗?
在PHP中,使用strtr
函数来翻译字符:
$str = 'ÁÉÍ foo ÖŐÚÜŰ bar';
echo strtr($str, array('Á' => 'A', 'É' => 'E', 'Í' => 'I', 'Ó' => 'O',
'Ö' => 'O', 'Ő' => 'O', 'Ú' => 'U', 'Ü' => 'U', 'Ű' => 'U'));
//=> AEI foo OOUUU bar