php - 在 PHP 中创建非英语目录

标签 php codeigniter

我希望能够以注册用户的名字为他们创建文件夹。他们的信息以西里尔字符存储在我的数据库中,并在创建文件夹时从中提取。问题是,如果信息是英文的,一切都很好,如果是西里尔文,我会得到类似 КульчмаРХРѕРІР° 的信息。一切都设置为 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.'/';

将不胜感激

最佳答案

强烈建议您在服务器的目录名称中使用纯 ASCII 字符,或者更好:仅使用数字、小写字母和下划线。使用特殊字符总是会带来麻烦,而且您似乎已经遇到了一些麻烦。

我建议您将目录命名为数字用户 ID(他们肯定有一个),如果您觉得这样更好用零填充(所有名称的长度都相等)。

关于php - 在 PHP 中创建非英语目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7586686/

相关文章:

javascript - 选中复选框时调用 Ajax 或提交按钮

PHP导出带图片的excel

php - 如何匹配出现在特定子字符串之后的多个子字符串?

javascript - ajax,变量未定义?

php - 如何在php codeIgniter中更新相同的字段但不同的表

php - Codeigniter mysql 查询使用 UNION 首先选择等于今天日期的值

php - 我的数据库连接没有连接到 postgreSQL

php - 使用 codeigniter 更新表行并将其保存到数据库中

php - PHP查询PostgreSQL很慢,如何提高?

php - mysql 中一次只允许 1 个打开条目