Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengeluarkan Emoji dengan Cekap daripada Teks dalam PHP?

Bagaimana untuk Mengeluarkan Emoji dengan Cekap daripada Teks dalam PHP?

DDD
DDDasal
2024-10-30 07:13:02811semak imbas

How to Efficiently Remove Emojis from Text in PHP?

PHP: Mengalih keluar Emoji daripada Teks dengan Fungsi Mudah

Dalam soalan ini, objektifnya ialah untuk mencipta fungsi mudah yang menghapuskan aksara emoji daripada komen Instagram. Coretan kod yang disediakan mengambil rentetan, membahagikannya kepada tatasusunan aksara dan mengalih keluar aksara yang diklasifikasikan sebagai emoji. Walau bagaimanapun, kod asal menghadapi kesukaran apabila berurusan dengan pengekodan aksara tertentu.

Pendekatan Disyorkan Menggunakan Fungsi preg_replace

Untuk menangani isu ini, penyelesaian yang lebih sesuai ialah menggunakan fungsi preg_replace. Kaedah ini menyediakan cara yang lebih fleksibel untuk mengenal pasti dan mengalih keluar corak aksara tertentu, termasuk emoji. Berikut ialah versi fungsi yang dikemas kini:

<code class="php">public static function removeEmoji($text) {
    $regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u'; // Match Emoticons
    $regexSymbols = '/[\x{1F300}-\x{1F5FF}]/u'; // Match Miscellaneous Symbols and Pictographs
    $regexTransport = '/[\x{1F680}-\x{1F6FF}]/u'; // Match Transport And Map Symbols
    $regexMisc = '/[\x{2600}-\x{26FF}]/u'; // Match Miscellaneous Symbols
    $regexDingbats = '/[\x{2700}-\x{27BF}]/u'; // Match Dingbats

    $clean_text = $text;
    $clean_text = preg_replace($regexEmoticons, '', $clean_text);
    $clean_text = preg_replace($regexSymbols, '', $clean_text);
    $clean_text = preg_replace($regexTransport, '', $clean_text);
    $clean_text = preg_replace($regexMisc, '', $clean_text);
    $clean_text = preg_replace($regexDingbats, '', $clean_text);

    return $clean_text;
}</code>

Fungsi yang dikemas kini ini menggunakan berbilang ungkapan biasa untuk menyasarkan kategori berlainan aksara Unicode yang mewakili emoji. Ia mengalih keluar emotikon, pelbagai simbol, piktograf, simbol pengangkutan dan dingbat.

Ingat bahawa sesetengah emoji mungkin berada di luar julat Unikod yang ditentukan. Jika perlu, anda boleh mengembangkan corak regex untuk menampung keperluan yang lebih khusus.

Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa sistem pangkalan data moden dan perkhidmatan dalam talian secara amnya menyokong emoji. Oleh itu, melainkan perlu benar-benar, mengalih keluar emoji mungkin bukan langkah wajib dalam kebanyakan kes.

Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Emoji dengan Cekap daripada Teks dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn