PHP函数,用于将十六进制字符代码转换为显示等效字符

PHP函数,用于将十六进制字符代码转换为显示等效字符,php,character-encoding,Php,Character Encoding,我正在编写一些PHP代码,以识别字符串中的十六进制字符代码,并将其转换为“在屏幕上看到的”等效代码。主要是,十六进制代码用于重音字符,如é、ç等 例如,我收到如下字符串: $str=“cafés”请注意,9后面有一个分号(我必须删除它才能停止此文本编辑器转换它 字符串的十六进制部分是é(最后还是分号)-我需要将其转换为“屏幕上看到的”等价物,在本例中为“é”。因此转换后的字符串将是“cafés” 下面的PHP代码可以工作,但是我必须为每个十六进制代码编写一个,并且有很多 $key

我正在编写一些PHP代码,以识别字符串中的十六进制字符代码,并将其转换为“在屏幕上看到的”等效代码。主要是,十六进制代码用于重音字符,如é、ç等

例如,我收到如下字符串:

$str=“cafés”请注意,9后面有一个分号(我必须删除它才能停止此文本编辑器转换它

字符串的十六进制部分是é(最后还是分号)-我需要将其转换为“屏幕上看到的”等价物,在本例中为“é”。因此转换后的字符串将是“cafés”

下面的PHP代码可以工作,但是我必须为每个十六进制代码编写一个,并且有很多

$keywords=str#u replace(é”,“é”,$keywords);[同样,针部分有一个分号]

有人能推荐一个现有的PHP函数,它可以扫描任何字符串以查找已知的十六进制代码,并将其转换为等效的显示格式吗

我在UTF8工作,否则

谢谢你的考虑,如果我的术语听起来像业余的话,很抱歉

詹姆斯

这将把HTML实体转换成它们的相关字符

$keywords = html_entity_decode($keywords);

谢谢,是的,我确实对此感到好奇,但输出显示带有问号的小黑钻石,例如caf�s、 我认为这与编码有关?如果您要将其输出到浏览器,为什么还要使用实体解码?Marcus,输出将进入浏览器并存储在MySQL DB中。但我确实需要对其进行解码,因为我需要从字符串中删除分号(出于完全不同的原因)因此,这会破坏十六进制代码。有什么原因不能将没有分号的版本放在另一个变量中?并显示带有分号的版本?啊,我需要使用:$keywords=html\u entity\u decode($keywords,ENT\u COMPAT | ENT\u HTML401,“UTF-8”);因为PHP的旧版本。我想我现在没事了。谢谢你的提示。