2013-10-21 19 views
2

我创建此脚本以仅转换字符(不是符号)。str_replace()html实体字符

基本上,我创建两个数组:

第一个

$decode = array("À","Á","Â","Ã","Ä","Å","Æ","Ç","È","É","Ê","Ë","Ì","Í","Î","Ï","Ð","Ñ","Ò","Ó","Ô","Õ","Ö","Ø","Ù","Ú","Û","Ü","Ý","Þ","ß","à","á","â","ã","ä","å","æ","ç","è","é","ê","ë","ì","í","î","ï","ð","ñ","ò","ó","ô","õ","ö","ø","ù","ú","û","ü","ý","þ","ÿ"); 

第二一个(实体):

$entities = array("À","Á","Â","Ã","Ä","Å","Æ","Ç","È","É","Ê","Ë","Ì","Í","Î","Ï","Ð","Ñ","Ò","Ó","Ô","Õ","Ö","Ø","Ù","Ú","Û","Ü","Ý","Þ","ß","à","á","â","ã","ä","å","æ","ç","è","é","ê","ë","ì","í","î","ï","ð","ñ","ò","ó","ô","õ","ö","ø","ù","ú","û","ü","ý","þ","ÿ"); 

并与str_replace($entities, $decode, $string) REPLACE。

显然它应该工作,但例如与此字符串。

$string= "è ò à ç ù § ° *é"; 

返回

è ò à ç ù § ° *é 

我不明白为什么它不工作,任何想法?

回答

0

试试这个:str_replace($decode, $entities, $string);

+0

它不起作用 –

0

这很奇怪。当我运行你的代码时,我得到这个输出。

è ò à ç ù § ° *é 

告诉我更多关于您的设置的信息,例如:您正在测试的PHP版本,Web Server(Apache?)和版本以及测试输出的位置,例如命令行或浏览器(哪个浏览器?)。

+0

set,PHP v5.3.21,Apache,Chrome。就是这样;) –

+0

http://goo.gl/vDafCQ它是你的输出吗? –

+0

是的,我从字面上复制了你的数组,测试字符串和str_replace函数,并且我收到了上面我认为是正确输出的输出结果?尝试测试你的代码[这里](http://writecodeonline.com/php/) – Urbley