Memuat naik Nama Fail UTF-8 dalam PHP
Apabila berurusan dengan muat naik fail, kendalikan nama fail yang mengandungi aksara khas, seperti dalam UTF-8 pengekodan, boleh memberikan cabaran. Begini caranya untuk menyelesaikan isu ini:
Coretan kod yang disediakan cuba memuat naik nama fail yang dikodkan UTF-8, tetapi ia menghadapi isu di mana nama fail yang terhasil pada pelayan mempamerkan aksara yang bercelaru. Untuk membetulkannya, pertimbangkan penyelesaian berikut:
Pilihan 1: Tukar Nama Fail kepada Halaman Kod Sistem
Pada sistem pengendalian tertentu, fungsi sistem fail hanya boleh menyokong aksara dalam halaman kod sistem . Dalam kes ini, tukar nama fail kepada halaman kod yang sesuai menggunakan fungsi iconv. Contohnya, untuk Windows 8 dalam Bahasa Cina Ringkas, gunakan:
<code class="php">$filename = iconv("UTF-8", "cp936", $filename);</code>
Pilihan 2: Tukar Halaman Kod Sistem dan Halaman Kod Nama Fail
Pendekatan alternatif ialah menukar sistem halaman kod ke Vietnam (1258) menggunakan tetapan Panel Kawalan. Tukar nama fail kepada halaman kod 1258 juga, menggunakan kod berikut:
<code class="php">$fn2 = iconv("UTF-8","cp1258", $base_dir.$fn);</code>
Pertimbangan Pilihan:
Pilihan 1: Had Halaman Kod Sistem
Pilihan ini mengehadkan aksara nama fail kepada halaman kod sistem yang disokong, yang mungkin tidak termasuk semua aksara Vietnam.
Pilihan 2: Perubahan Halaman Kod Sistem
Sementara pendekatan ini membenarkan penggunaan aksara Vietnam, ia mengubah suai halaman kod sistem, yang berpotensi menjejaskan aplikasi lain dan tidak selalu memberikan penyelesaian yang lengkap.
Akhirnya, pilihan ideal bergantung pada konfigurasi sistem anda dan keperluan khusus.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Nama Fail Berkod UTF-8 dalam Muat Naik Fail PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!