问题描述
||
有没有一种方法可以使用PHP将所有字符(包括常规字符)转换为类似的格式:
& é à ç <
当我说普通字符时,我的意思是说诸如“ ABCD123!@#$ \”之类的字符。
这可能吗?先谢谢了!
解决方法
您可以使用此一支衬纸来做。
将字符串拆分为适当的数组。
遍历字符以获得其序数值。
加入实体模式。
echo \'&#\' . join(\';&#\',array_map(\'ord\',str_split($str))) . \';\';
键盘。
另外,您说过要将字符转换为等效的十六进制,但是除非巧合,并且示例中没有no1ѭ,否则所有值都不会显示为十六进制。
, 有几种方法。一个是
join(\'\',array_map(create_function(\'$c\',\'return \"&#\".ord($c).\";\";\'),str_split($string)));
, Alex带Alex / Anomie的答案,以获得完整的Unicode支持,您可以使用http://hsivonen.iki.fi/php-utf8/上的软件包进行以下操作:
\'&#\' . join(\';&#\',utf8ToUnicode($str) . \';\'