Hầu hết các hàm PHP cốt lõi không xử lý các bộ ký tự ngoài Latin-1. Nhưng trước ‘pathinfo’, việc đặt ‘setlocale’ có thể được sử dụng để trả về tên tệp chính xác ngay cả khi nó được mã hóa UTF-8.
Theo mặc định, nó chạy với ngôn ngữ ‘C’ và các tập lệnh CLI chạy với ngôn ngữ utf-8 mặc định. Ngôn ngữ trên máy chủ phải được thay đổi từ ‘C’ thành ‘C.UTF-8’ hoặc ‘en_US.UTF-8’ trước khi gọi các hàm khác.
setlocale(LC_ALL,'en_US.UTF-8'); pathinfo($OriginalName, PATHINFO_FILENAME); pathinfo($OriginalName, PATHINFO_BASENAME);