Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Membetulkan Aksara UTF-8 yang Patah Apabila Menggunakan file_get_contents()?

Bagaimanakah Saya Boleh Membetulkan Aksara UTF-8 yang Patah Apabila Menggunakan file_get_contents()?

Susan Sarandon
Lepaskan: 2024-11-30 07:20:11
asal
1018 orang telah melayarinya

How Can I Fix Broken UTF-8 Characters When Using file_get_contents()?

Membetulkan Aksara UTF-8 Patah dengan file_get_contents()

Apabila mendapatkan semula kandungan HTML daripada sumber luaran menggunakan file_get_contents(), perkara biasa ditemui isu dengan aksara UTF-8 terputus. Ini boleh menyebabkan aksara yang tidak masuk akal dipaparkan dan bukannya aksara berbilang bahasa yang dimaksudkan.

Penyelesaian: Penukaran Pengekodan dengan mb_convert_encoding()

Satu penyelesaian yang berkesan ialah menggunakan mb_convert_encoding( ) berfungsi untuk menukar kandungan HTML yang diambil kepada pengekodan UTF-8 secara eksplisit. Barisan kod berikut mempamerkan pendekatan ini:

$html = mb_convert_encoding(file_get_contents('http://example.com'), 'UTF-8', 'auto');
Salin selepas log masuk

Dengan menggunakan parameter "auto" dalam fungsi mb_detect_encoding(), pengekodan aksara yang betul bagi kandungan HTML boleh dikesan secara automatik. Ini memastikan kandungan yang diambil ditukar dengan betul kepada UTF-8, menyelesaikan isu perebutan aksara.

Pertimbangan Tambahan:

  • Pastikan pelayan mengehoskan Fail HTML mempunyai pengekodan yang betul dikonfigurasikan.
  • Tetapkan pengepala Jenis Kandungan dalam respons HTTP untuk menunjukkan pengekodan UTF-8 bagi dokumen HTML.
  • Gunakan fungsi "utf8_encode()" untuk menukar HTML yang diambil kepada UTF-8.
  • Gunakan fungsi "iconv()" untuk menukar HTML yang diambil kepada UTF-8.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Aksara UTF-8 yang Patah Apabila Menggunakan file_get_contents()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan