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
905 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!

sumber:php.cn
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