我希望能够以其名称为注册用户创建文件夹。他们的信息以西里尔字符存储在我的数据库中,并在创建文件夹时从他们的信息中删除。问题是,如果信息是英文的,一切都还可以,如果在西里尔语中,我会得到像Кульчманова这样的东西。一切都设置为utf-8。如果我将文件夹名称设置为即'фыва',它就没有问题。
$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.'/';
非常感谢任何帮助
答案 0 :(得分:3)
我强烈建议您在服务器上的目录名中仅使用 纯ASCII字符,甚至更好:仅限数字,小写字母和下划线。使用特殊字符总会带来麻烦,看起来你已经有了一些。
我建议您将目录命名为数字用户ID(它们肯定有一个),如果您发现它看起来更好(所有名称长度相等),则用零填充。