Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Memuat naik Fail Vietnam dengan Nama Fail Berkod UTF-8 dalam PHP?

Bagaimana untuk Memuat naik Fail Vietnam dengan Nama Fail Berkod UTF-8 dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-10-31 13:17:01940semak imbas

How to Upload Vietnamese Files with UTF-8 Encoded Filenames in PHP?

PHP - Pengekodan Nama Fail UTF-8 Semasa Memuat Naik

Nama fail aksara Vietnam boleh menimbulkan isu semasa muat naik apabila menggunakan PHP. Mari kita terokai penyelesaian untuk memastikan pengendalian nama fail UTF-8 yang betul.

Pertimbangkan kod berikut:

<code class="php">$base_dir = "D:/";
$fn = $_FILES["upload"]["name"];
$fn2 = $base_dir . $fn;
move_uploaded_file($_FILES["upload"]["tmp_name"], $fn2);</code>

Kod ini mendapatkan semula nama fail yang dimuat naik, menambahkannya pada direktori asas dan mengalihkannya fail ke lokasi yang ditentukan. Walau bagaimanapun, nama fail yang terhasil pada komputer tempatan mungkin kelihatan rosak dengan aksara beraksen digantikan dengan kod aksara.

Untuk membetulkannya, kami perlu menukar nama fail daripada UTF-8 kepada halaman kod yang serasi dengan tempatan sistem pengendalian. Sistem Windows biasanya menggunakan halaman kod yang khusus untuk tetapan rantau atau bahasa. Halaman kod boleh ditentukan menggunakan arahan chcp dalam command prompt.

Penyelesaian 1: Tukar Nama Fail kepada Halaman Kod Sistem

Menggunakan fungsi iconv, kita boleh menukar nama fail ke halaman kod yang sesuai. Contohnya, jika halaman kod sistem ialah 1258, kita boleh menggunakan kod berikut:

<code class="php">$fn2 = iconv("UTF-8", "cp1258", $base_dir . $fn);</code>

Penyelesaian 2: Tukar Halaman Kod Sistem

Penyelesaian alternatif ialah untuk menukar halaman kod sistem kepada halaman kod sasaran, biasanya yang serasi dengan UTF-8. Ini boleh dilakukan dengan menavigasi ke Panel Kawalan, memilih "Wilayah" dan menukar tab "Pentadbiran" ke tempat yang sesuai, seperti Vietnam (Vietnam).

Setelah halaman kod sistem telah ditukar, nama fail yang dimuat naik akan dikendalikan dengan betul dan akan dipaparkan dengan aksara UTF-8 yang utuh. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa penyelesaian ini boleh menjejaskan fungsi sistem lain yang bergantung pada halaman kod, seperti mencetak dan melihat fail teks.

Atas ialah kandungan terperinci Bagaimana untuk Memuat naik Fail Vietnam dengan Nama Fail Berkod UTF-8 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