如何在PHP中将Emoji从Unicode转换成?

人气:137 发布:2023-01-03 标签: php unicode emoji

问题描述

我使用此table of Emoji并尝试此代码:

<?php print json_decode('"u2600"'); // This convert to ☀ (black sun with rays) ?>

如果我尝试将这个u1F600(咧嘴笑脸)转换为json_decode,我会看到这个符号-ὠ0

怎么了?如何正确使用表情符号?

推荐答案

PHP5

JSON的u一次只能处理一个UTF-16代码单元,因此您需要编写代理项对。对于U+1F600,这是uD83DuDE00,它起作用:

echo json_decode('"uD83DuDE00"');

PHP 7

现在您不再需要使用json_decode,只需使用u和Unicode文本:

echo "u{1F30F}";

23