UNICODE ESCAPE SEQUENCE ДЕКОДЕР PHP

Unicode Escape Sequence (UES) - это специальный формат кодировки символов, который используется для включения недопустимых символов, таких как пробелы или кавычки, в строки PHP. Для декодирования UES-строк в PHP используется функция

preg_replace_callback_callback('/\\\\u([0-9a-zA-Z]{4})/', 'convert', $string);

Функция preg_replace_callback_callback принимает регулярное выражение, в данном примере - '\\\\u([0-9a-zA-Z]{4})', и функцию обратного вызова, в данном случае - 'convert'. Каждый раз, когда функция находит UES-последовательность в строке PHP, она вызывает функцию обратного вызова для ее декодирования. В данном случае функция обратного вызова называется 'convert', пример ее реализации:

function convert($match) {
return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
}

Данная функция pack принимает строку, содержащую 4 шестнадцатеричных символа, и конвертирует ее в двоичный формат. Затем функция mb_convert_encoding конвертирует двоичный формат в UTF-8, используя UCS-2BE в качестве исходной кодировки.

Escape Sequences in PHP, How to Use PHP Escape Sequences, Escape Sequences Explained on Codecademy

PHP For Beginners, Ep 26 - Always Escape Untrusted Input

PHP Escaping Characters - Using Escape Characters in PHP

Learn PHP - Part 13 - Escape Sequence

The Support for Unicode Characters in PHP7

Decode Script Bot PHP

Реклама
Новое
Реклама