Nama Fail UTF-8 dalam Fungsi Sistem Fail PHP
Isu:
Mencipta direktori menggunakan mkdir dengan UTF- 8 aksara menyebabkan paparan yang salah dalam Windows Explorer disebabkan pengekodan aksara isu.
Soalan:
Bagaimana saya boleh membuat direktori dengan aksara UTF-8 menggunakan fungsi sistem fail dalam PHP?
Penyelesaian:
Pendekatan Pilihan: URL Pengekodan
Urlencode rentetan yang dimaksudkan sebagai nama fail. Semua aksara yang dikembalikan oleh urlencode adalah sah dalam nama fail pada pelbagai platform (NTFS/HFS/UNIX). Untuk mendapatkan semula nama fail asal dalam UTF-8, hanya urldecode rentetan yang dikodkan.
Kaveat:
Penyelesaian Alternatif (tetapi Kurang Ideal):
Pengekodan Rentetan untuk Windows:
Jika menggunakan Windows, pembungkus sistem fail PHP menjangkakan rentetan ISO-8859-1. Pendekatan ini mempunyai dua pilihan:
Kaveat untuk Alternatif Pendekatan:
Cadangan:
Normalkan UTF-8 dan pertimbangkan transliterasi untuk nama fail untuk mengelakkan isu yang mungkin timbul dan memastikan pengendalian nama fail dan direktori yang konsisten dan bebas platform.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Direktori dengan Nama Fail UTF-8 Menggunakan Fungsi Sistem Fail PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!