xml — специальные символы PHP Emoji из строки

Мне нужно убрать смайлики из строки, мы можем хранить информацию, но это нарушает наш экспорт XML из-за специальных символов, используемых в смайликах. Я хотел бы использовать PHP, чтобы раздеть эмодзи до того, как он попадет в базу данных.
,
Вот образец одного из таких смайликов: 😊

Я пробовал несколько методов, описанных в этой теме: PHP: написание простой функции removeEmoji

Однако они не работают. Может кто-нибудь предложить способ избавиться от всего этого?

То, что я пробовал до сих пор, не работает, чтобы лишить смоделированного выше примера:

function removeEmoji($string) {
return preg_replace('/&#x(e[0-9a-f][0-9a-f][0-9a-f]|f[0-8][0-9a-f][0-9a-f])/i', '', $string);
}

Я также попробовал:

public static function removeEmoji($text) {

$clean_text = "";

// Match Emoticons
$regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u';
$clean_text = preg_replace($regexEmoticons, '', $text);

// Match Miscellaneous Symbols and Pictographs
$regexSymbols = '/[\x{1F300}-\x{1F5FF}]/u';
$clean_text = preg_replace($regexSymbols, '', $clean_text);

// Match Transport And Map Symbols
$regexTransport = '/[\x{1F680}-\x{1F6FF}]/u';
$clean_text = preg_replace($regexTransport, '', $clean_text);

// Match Miscellaneous Symbols
$regexMisc = '/[\x{2600}-\x{26FF}]/u';
$clean_text = preg_replace($regexMisc, '', $clean_text);

// Match Dingbats
$regexDingbats = '/[\x{2700}-\x{27BF}]/u';
$clean_text = preg_replace($regexDingbats, '', $clean_text);

return $clean_text;
}

а также попробовал:

$text = preg_replace('/&#x(e[0-9a-f][0-9a-f][0-9a-f]|f[0-8][0-9a-f][0-9a-f])/i', '', $text);

Ничего из этого не работает, скрипт, который я использую для вызова всего этого:

  $comments = remove_emoji($comments);

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]