Полное руководство: преобразование эмодзи в десятичные коды в PHP

Эмодзи стали неотъемлемой частью современного общения, придавая нашим сообщениям нотку эмоций и индивидуальности. Хотя смайлики обычно представляются в виде графических символов, иногда для различных целей может потребоваться преобразовать их в десятичные коды. В этой статье мы рассмотрим несколько методов преобразования смайлов в десятичные коды с помощью PHP, а также приведем примеры кода.

Метод 1: использование функции mb_convert_encoding

$emoji = "????";
$decimalCode = mb_convert_encoding($emoji, 'UTF-32', 'UTF-8');
$decimalCode = bin2hex($decimalCode);
echo $decimalCode;

Метод 2: использование функции preg_replace_callback

$emoji = "????";
$decimalCode = preg_replace_callback('/./u', function(array $match) {
    return '&#' . (ord($match[0]) . ';');
}, $emoji);
echo $decimalCode;

Метод 3: использование класса IntlChar(требуется PHP 7+)

$emoji = "????";
$decimalCode = "";
$codePoints = IntlChar::charToInt($emoji);
foreach ($codePoints as $codePoint) {
    $decimalCode .= "&#{$codePoint};";
}
echo $decimalCode;

Метод 4: реализация пользовательской функции сопоставления

function emojiToDecimal($emoji) {
    $hexCode = bin2hex(mb_convert_encoding($emoji, 'UTF-32', 'UTF-8'));
    $decimalCode = hexdec($hexCode);
    return $decimalCode;
}
$emoji = "????";
$decimalCode = emojiToDecimal($emoji);
echo $decimalCode;

В этой статье мы рассмотрели различные методы преобразования смайлов в десятичные коды с помощью PHP. Предоставленные примеры кода демонстрируют различные подходы, такие как использование встроенных функций, таких как mb_convert_encodingи preg_replace_callback, использование класса IntlChar(для PHP 7+). ) или реализовать пользовательскую функцию сопоставления. Преобразуя смайлы в десятичные коды, вы можете выполнять такие задачи, как сохранение смайлов в базах данных, сравнение и сортировка смайлов или программное управление ими.

Помните, что смайлы добавляют веселья и выразительности общению, а возможность преобразовывать их в десятичные коды в PHP обеспечивает гибкость и открывает новые возможности в ваших начинаниях по программированию.