Heim Backend-Entwicklung PHP-Tutorial php emoji表情处理

php emoji表情处理

Jul 29, 2016 am 09:02 AM
emoji str

背景

移动设备经常会发生用户发送的内容中包含emoji表情,未经处理,在显示时就是乱码。

解决方案

1.数据库支持:将Mysql的编码从utf8转换成utf8mb4。 

2.匹配出内容中的emoji表情做过滤或替换

/**
 * 表情转换  更新到ios9.2涵盖编码范围
 * @param $str
 * @return mixed
 */
public static function emoji_to_html($str) {
    $regex = '/([0-9|#][\x{20E3}])|[\x{00ae}|\x{00a9}|\x{203C}|\x{2047}|\x{2048}|\x{2049}|\x{3030}|\x{303D}|\x{2139}|\x{2122}|\x{3297}|\x{3299}][\x{FE00}-\x{FEFF}]?|[\x{2190}-\x{21FF}][\x{FE00}-\x{FEFF}]?|[\x{2300}-\x{23FF}][\x{FE00}-\x{FEFF}]?|[\x{2460}-\x{24FF}][\x{FE00}-\x{FEFF}]?|[\x{25A0}-\x{25FF}][\x{FE00}-\x{FEFF}]?|[\x{2600}-\x{27BF}][\x{FE00}-\x{FEFF}]?|[\x{2900}-\x{297F}][\x{FE00}-\x{FEFF}]?|[\x{2B00}-\x{2BF0}][\x{FE00}-\x{FEFF}]?|[\x{1F000}-\x{1F6FF}][\x{FE00}-\x{FEFF}]?|[\x{1F900}-\x{1F9FF}][\x{FE00}-\x{FEFF}]?/u';
    $str = preg_replace_callback($regex,function($matches){
        $str = json_encode($matches[0]);
        $str = '<em data-emoji="'" . str_replace></em>';
        return $str;
    },$str);
    return $str;
}
从数据库取出后再转回
$string = preg_replace_callback('/<em data-emoji='\"(.*?)\"'>/is', "self::preg_emoji", $string);
/**
 * 输出emoji表情
 * @param $matches
 * @return mixed
 */
public static function preg_emoji($matches)
{
    $str = $matches[0];
    $str = str_replace('em:', '\u', $str);
    return $str;
}</em>
Nach dem Login kopieren
3.直接过滤掉
/**
 * 过滤表情
 * @param $str
 * @return mixed
 */
public static function filter_emoji($str) {
    $regex = '/(\\\u[ed][0-9a-f]{3})/i';
    $str = json_encode($str);
    $str = preg_replace($regex, '', $str);
    return json_decode($str);
}
Nach dem Login kopieren

以上就介绍了php emoji表情处理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Apple veröffentlicht iOS 17.4 Beta 1 und führt 118 neue Emojis ein, darunter Phoenix, Limette usw. Apple veröffentlicht iOS 17.4 Beta 1 und führt 118 neue Emojis ein, darunter Phoenix, Limette usw. Jan 26, 2024 am 08:24 AM

Laut Berichten vom 26. Januar, laut ausländischen Technologiemedien Emojipedia, hat Apple im heute veröffentlichten iOS 17.4 Beta 1-Update neben wichtigen Verbesserungen wie Sideloading und App-Stores von Drittanbietern zum Testen in 27 EU-Ländern auch mehrere hinzugefügt neues Emoji. Das iOS 17.4 Beta 1-Update fügt Phönix, Limette, lächelnde Gesichter, die den Kopf auf und ab schütteln, sowie eine Reihe von Charakter-Emoticons hinzu, die den Weg weisen, aus dem von Unicode im September 2023 vorgeschlagenen Emoji 15.1-Update. Die vollständigen Emojis sind wie folgt angehängt: Dieses Update fügt insgesamt 118 Emojis hinzu, darunter 6 neue Emojis und 4 geschlechtsneutrale Familien-Emojis. Darüber hinaus gibt es 6 vorhandene Zeichenausdrücke

So deaktivieren Sie Emojis in Win10 Education Edition So deaktivieren Sie Emojis in Win10 Education Edition Feb 24, 2024 pm 01:55 PM

Emoji-Emoticons sind die neueste Eingabemethode, die zu Win10 Education Edition hinzugefügt wurde. Viele niedliche Emoticons machen das Chatten jedoch weniger langweilig. Heute zeige ich Ihnen, wie Sie Emojis in Win10 Education Edition deaktivieren . einführen. So deaktivieren Sie emoji1 in Win10 Education Edition. Zuerst müssen Sie mit der rechten Maustaste auf die Eingabemethode auf der rechten Seite der Taskleiste unten klicken. 2. Wählen Sie im Popup-Optionsfeld „Einstellungen“ aus, um die Benutzeroberfläche für die Spracheinstellung aufzurufen. 3. Wählen Sie in der Benutzeroberfläche die Option „Tasten“ und scrollen Sie nach unten, um „Bedienfeld für Emoticons und Symbole öffnen“ zu finden, wo Sie Emoji-Ausdrücke deaktivieren können. 4. Wenn andere Eingabemethoden installiert sind, können Sie in den Windows-Einstellungen die Benutzeroberfläche „Einstellungen und Sprache“ aufrufen und dann auswählen

So geben Sie Huawei-Emojis ein So geben Sie Huawei-Emojis ein Sep 26, 2023 pm 01:31 PM

Huawei-Emoji-Eingabemethode: 1. Huawei-Mobiltelefone sind mit einer Emoji-Tastatur ausgestattet. Sie können bei der Texteingabe zu dieser Tastatur wechseln. 2. Wenn Sie Emojis eingeben müssen, drücken Sie lange auf das Eingabefeld und wählen Sie dann „Eingabe“. „Methodeneinstellungen“: In den Eingabemethodeneinstellungen können Sie die mit dem System gelieferte Emoji-Eingabemethode finden und auswählen. 3. Sie können eine Emoji-Tastatur eines Drittanbieters herunterladen und verwenden und dann das gewünschte Emoji durchsuchen und auswählen Verwendung auf der Tastatur.

Die öffentliche Betaversion von iOS 15.4 und iPadOS 15.4 Beta 1 wurde veröffentlicht. Face ID kann auch dann verwendet werden, wenn Sie eine Maske tragen Die öffentliche Betaversion von iOS 15.4 und iPadOS 15.4 Beta 1 wurde veröffentlicht. Face ID kann auch dann verwendet werden, wenn Sie eine Maske tragen Apr 13, 2023 pm 11:01 PM

Apple hat iOS 15.4 und iPadOS 15.4 Beta 1 offiziell der Öffentlichkeit vorgestellt, Version 19E5209h. In den offiziellen Update-Hinweisen sind viele Änderungen aufgeführt, darunter auch die Hinzufügung neuer Funktionen. Unterstützung für Masken Face ID Apple hat „Mask Face ID“ in iOS 15.4 hinzugefügt. Das iPhone authentifiziert Benutzer, indem es die einzigartigen Merkmale der Augenpartie beim Tragen einer Maske identifiziert. Beachten Sie, dass Benutzer ein iPhone 12 oder höher verwenden müssen, um diese Funktion nutzen zu können. Hinzufügen von 112 neuen Emoji-Ausdrücken iOS 15.4 Beta 1 unterstützt offiziell Emoji 14. Fügen Sie es hinzu

Was tun, wenn das MySQL-Emoji verstümmelt ist? Was tun, wenn das MySQL-Emoji verstümmelt ist? Feb 16, 2023 am 10:01 AM

Lösung für das verstümmelte MySQL-Emoji: 1. Überprüfen Sie die MySQL-Tabellenkodierung mit dem Befehl „show create table test ENGINE=InnoDB DEFAULT CHARSET=utf8mb4“.

In Python integrierte Quellcodeanalyse vom Typ str In Python integrierte Quellcodeanalyse vom Typ str May 09, 2023 pm 02:16 PM

1Die Grundeinheit des Unicode-Computerspeichers ist das Byte, das aus 8 Bits besteht. Da Englisch nur aus 26 Buchstaben plus einer Reihe von Symbolen besteht, können englische Zeichen direkt in Bytes gespeichert werden. Andere Sprachen (wie Chinesisch, Japanisch, Koreanisch usw.) müssen jedoch aufgrund der großen Anzahl von Zeichen mehrere Bytes für die Codierung verwenden. Mit der Verbreitung der Computertechnologie entwickelt sich die Technologie zur Kodierung nicht-lateinischer Zeichen weiter, es gibt jedoch immer noch zwei wesentliche Einschränkungen: keine Unterstützung mehrerer Sprachen: Das Kodierungsschema einer Sprache kann nicht in einer anderen Sprache verwendet werden und es gibt keinen einheitlichen Standard: Beispielsweise gibt es auf Chinesisch viele Codierungsstandards wie GBK, GB2312, GB18030 usw. Da die Codierungsmethoden nicht einheitlich sind, müssen Entwickler zwischen verschiedenen Codierungen hin und her konvertieren, und es treten zwangsläufig viele Fehler auf.

Was sind die Gemeinsamkeiten und Unterschiede zwischen __str__ und __repr__ in Python? Was sind die Gemeinsamkeiten und Unterschiede zwischen __str__ und __repr__ in Python? Apr 29, 2023 pm 07:58 PM

Was sind die Gemeinsamkeiten und Unterschiede zwischen __str__ und __repr__? Wir alle wissen, dass die in Python integrierte Funktion repr() Objekte in Form von Zeichenfolgen ausdrücken kann, um unsere Identifizierung zu erleichtern. Dies ist die „String-Darstellung“. repr() erhält die String-Darstellung eines Objekts über die spezielle Methode __repr__. Wenn __repr__ nicht implementiert ist und wir eine Instanz eines Vektors auf der Konsole ausgeben, kann die resultierende Zeichenfolge sein. >>>classExample:pass>>>print(str(Example()))>>>

iOS 15.4 Beta 5 führt neue Funktionen ein: Face ID, AirTag Anti-Tracking usw. iOS 15.4 Beta 5 führt neue Funktionen ein: Face ID, AirTag Anti-Tracking usw. Apr 21, 2023 am 08:10 AM

Apple stellt iOS15.4Beta5 und iPadOS15.4Beta5 den Entwicklern zur Verfügung. Es wird geschätzt, dass dies die letzte Beta sein wird. Sie wird voraussichtlich nächste Woche in die RC-Phase eintreten und die offizielle Version wird vor Mitte März veröffentlicht. AirTag-Anti-Tracking-Funktion Die neue Version von iOS 15.4 führt die zuvor von Apple angekündigten AirTag- und FindMy-Anti-Tracking-Funktionen ein. Jetzt wurden sie in Beta 4 eingeführt. Sie fügen Warnmeldungen hinzu und passen die Warnung „Unbekanntes Zubehör erkannt“ beim Pairing-Design an . Siris neue Sprachoption Für amerikanische Benutzer hat iOS15.4Beta4 die fünfte Siri-Stimme hinzugefügt (Dateiname: Quinn).

See all articles