从数据库中选择Unicode U +十六进制表示法

时间:2015-05-19 21:32:56

标签: php mysql select unicode

我有一个包含一些数据的表,

SELECT code, id FROM code WHERE id = 92;
+--------+----+
| id   | code|
+--------+----+
| كتب عربية | 92 |
+--------+----+
1 row in set

我需要能够从SELECT查询中获取此值,

U+0643 U+062A U+0628 U+0639 U+0631 U+0628 U+064A U+0629

MySQL能做到吗?如果没有,实现这样的事情的最快和最简单的方法是什么?

感谢任何指导

1 个答案:

答案 0 :(得分:1)

正如我在评论中所说,例如在PHP中使用简单的json_encode可以让你几乎已经在那里。

json_encode('كتب عربية');

会给你"\u0643\u062a\u0628 \u0639\u0631\u0628\u064a\u0629"

如果您需要在帖子中指定的确切U+格式,则可以在json结果上使用str_replace,在顶部稍加trim以删除{ {1}}和一个额外的空格:

"

将导致trim(str_replace('\u', ' U+', json_encode('كتب عربية')), '" ');

(小心,但如果你有“正常”字符,请说拉丁字母中的某些内容 - U+0643 U+062a U+0628 U+0639 U+0631 U+0628 U+064a U+0629不会替换带有json_encode符号的字符,但请保留原样。)