2013-01-04 66 views
0

我有一个网站需要向用户显示电话号码,但不是显示某人从源代码中收获的实际数字,而是想要替换电话的每个数字数字与相应的单词。例如...PHP str_replace用单词替换数字

355-758-0384 

Would become 

three five five - seven five eight - zero three eight four 

可以这样做吗?对不起,我没有任何代码显示,因为我甚至不知道从哪里开始。

回答

6
$string="355-758-0384"; 
$search = array(0,1,2,3,4,5,6,7,8,9); 
$replace = array('zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'); 
echo str_replace($search, $replace, $string); 

然后你可以藏汉使用任何不同的字符串,而不必更新代码

编辑:

如果你想自动空间上的末尾,则您的$替换阵列可以

$replace = array('zero ', 'one ', 'two ', 'three ', 'four ', 'five ', 'six ', 'seven ', 'eight ', 'nine '); 
+0

谢谢我最终编辑了一些空格,并为短划线添加了一些间距。这非常简洁和有效。 – Budove

+0

非常欢迎! –

1
str_replace(' ', ' ', strtr($phone_number, array(
    '0' => ' zero ', 
    '1' => ' one ', 
    ... 
)))