Tôi muốn có thể tạo thư mục cho người dùng đã đăng ký dưới tên của họ. Thông tin của họ được lưu trữ trong db của tôi trong các ký tự Cyrillic và được kéo ra khỏi chúng khi tạo thư mục. Vấn đề là nếu thông tin bằng tiếng Anh mọi thứ đều ổn, nếu trong Cyrillic tôi nhận được một cái gì đó như РљСѓР »СЊС ‡ РјР ° РЅРѕРІР °. Mọi thứ được đặt thành utf-8. Nếu tôi đặt tên thư mục thành i.e 'фыва', nó sẽ không gây ra vấn đề gì.Tạo các thư mục không phải tiếng Anh trong PHP
$this->load->model('users_model');
$i=$this->session->userdata('uid');
$new_name=$this->input->post('doc_name');
$folder=$this->users_model->getFullName($i); //$folder='фыва' works fine
if(!is_dir("./uploads/".$folder)){
mkdir("./uploads/".$folder , 0777);
}
$config['file_name'] = $new_name;
$config['upload_path'] = './uploads/'.$folder.'/';
Sẽ đánh giá cao sự giúp đỡ nào
Tôi thực sự mong bạn sử dụng uid thay vì một số chuỗi utf-8 cho tên thư mục. – halfdan
Mô-đun Cơ sở dữ liệu CodeIgniter có xử lý các collations khác nhau trong MySQL không? Công cụ nhiều byte không tự động trong PHP, nếu nó không xử lý đúng cách, nó sẽ làm những việc như thế. – Orbling
Bạn đang ở trên nền tảng nào? Các quy ước tên tệp Windows có thể kỳ lạ và không có mã hóa chuẩn trên bất kỳ nền tảng anyways nào. – phihag