php emoji表情处理
背景
移动设备经常会发生用户发送的内容中包含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>
/** * 过滤表情 * @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); }
以上就介绍了php emoji表情处理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Menurut laporan pada 26 Januari, menurut emojipedia media teknologi asing, dalam kemas kini iOS 17.4 Beta 1 yang dikeluarkan hari ini, sebagai tambahan kepada penambahbaikan besar seperti sideloading dan kedai aplikasi pihak ketiga untuk ujian di 27 negara EU, Apple juga telah menambah beberapa Emoji baharu. Kemas kini iOS 17.4 Beta 1 menambah phoenix, limau, wajah tersenyum menggelengkan kepala mereka ke atas dan ke bawah, dan satu siri emotikon aksara yang menunjukkan arah, daripada kemas kini Emoji 15.1 yang dicadangkan oleh Unicode pada September 2023. Emoji lengkap dilampirkan seperti berikut: Kemas kini ini menambah sejumlah 118 Emoji, termasuk 6 Emoji baharu dan 4 Emoji keluarga neutral jantina. Selain itu, terdapat 6 ekspresi watak sedia ada

Emotikon emoji ialah fungsi kaedah input terkini yang ditambahkan pada Win10 Education Edition. Banyak emotikon comel menjadikan sembang kurang membosankan perkenalkan. Cara untuk mematikan emoji1 dalam Win10 Education Edition Pertama, anda perlu klik kanan kaedah input di sebelah kanan bar tugas di bawah. 2. Pilih Tetapan dalam kotak pilihan pop timbul untuk memasuki antara muka tetapan bahasa. 3. Pilih pilihan "Kunci" dalam antara muka dan tatal ke bahagian bawah untuk mencari "Panel Emotikon dan Simbol Terbuka", di mana anda boleh mematikan ekspresi emoji. 4. Jika kaedah input lain dipasang, anda boleh memasukkan antara muka "Tetapan dan Bahasa" daripada tetapan Windows, dan kemudian pilih

Kaedah input emoji Huawei: 1. Telefon bimbit Huawei disertakan dengan papan kekunci emoji Anda boleh beralih ke papan kekunci untuk memasukkan emoji apabila memasukkan teks 2. Di mana anda perlu memasukkan emoji, tekan lama kotak input, dan kemudian pilih "Enter". "Tetapan Kaedah", dalam tetapan kaedah input, anda boleh mencari dan memilih kaedah input emoji yang disertakan dengan sistem 3. Anda boleh memuat turun dan menggunakan papan kekunci emoji pihak ketiga, dan kemudian anda boleh menyemak imbas pada papan kekunci dan memilih emoji yang anda mahu gunakan.

Apple secara rasminya telah melancarkan iOS 15.4 dan iPadOS 15.4 Beta 1 kepada umum, versi 19E5209h. Nota kemas kini rasmi menyenaraikan banyak perubahan, termasuk penambahan ciri baharu. Sokongan untuk topeng Face ID Apple telah menambah "Mask Face ID" dalam iOS 15.4 iPhone akan mengesahkan pengguna dengan mengenal pasti ciri unik kawasan sekitar mata apabila memakai topeng. Ambil perhatian bahawa pengguna mesti menggunakan iPhone 12 ke atas untuk menggunakan ciri ini. Menambah 112 ekspresi Emoji baharu iOS 15.4 Beta 1 menyokong Emoji 14 secara rasmi. Tambah padanya

Penyelesaian kepada emoji mysql yang bercelaru: 1. Semak pengekodan jadual mysql melalui arahan "show create table test ENGINE=InnoDB DEFAULT CHARSET=utf8mb4" 2. Tetapkan pengekodan bacaan kepada "utf8mb4" melalui "set names utf8mb4;".

1Unit asas storan komputer Unicode ialah bait, yang terdiri daripada 8 bit. Memandangkan bahasa Inggeris hanya terdiri daripada 26 huruf ditambah beberapa simbol, aksara Inggeris boleh disimpan terus dalam bait. Tetapi bahasa lain (seperti Cina, Jepun, Korea, dll.) perlu menggunakan berbilang bait untuk pengekodan kerana bilangan aksara yang banyak. Dengan penyebaran teknologi komputer, teknologi pengekodan aksara bukan Latin terus berkembang, tetapi masih terdapat dua batasan utama: tiada sokongan berbilang bahasa: skema pengekodan satu bahasa tidak boleh digunakan dalam bahasa lain dan tiada standard bersatu: contohnya Terdapat banyak piawaian pengekodan dalam bahasa Cina seperti GBK, GB2312, GB18030, dsb. Memandangkan kaedah pengekodan tidak bersatu, pembangun perlu menukar berulang-alik antara pengekodan yang berbeza, dan banyak ralat pasti akan berlaku.

Apakah persamaan dan perbezaan antara __str__ dan __repr__? Kita semua tahu perwakilan rentetan fungsi repr() boleh menyatakan objek dalam bentuk rentetan untuk memudahkan pengenalan kita. Ini ialah "perwakilan rentetan". repr() mendapatkan perwakilan rentetan objek melalui kaedah khas __repr__. Jika __repr__ tidak dilaksanakan, apabila kita mencetak contoh vektor ke konsol, rentetan yang terhasil mungkin. >>>classContoh:lulus>>>cetak(str(Contoh()))>>>

Apple menolak iOS15.4Beta5 dan iPadOS15.4Beta5 kepada pembangun Dianggarkan ini mungkin Beta terakhir Ia berkemungkinan memasuki peringkat RC minggu depan, dan versi rasmi akan dikeluarkan sebelum pertengahan Mac. Fungsi anti-penjejakan AirTag Versi baharu iOS 15.4 memperkenalkan fungsi anti-penjejakan AirTag dan FindMy yang diumumkan sebelum ini oleh Apple Kini ia telah diperkenalkan dalam Beta 4. Mereka menambah mesej amaran dan melaraskan amaran "aksesori tidak diketahui dikesan" semasa reka bentuk berpasangan. . Pilihan suara baharu Siri Untuk pengguna Amerika, iOS15.4Beta4 telah menambah suara Siri kelima (nama fail: Quinn).
