无法将我的文件保存为阿拉伯语拉拉维尔


Can't save my files in Arabic Laravel

我的应用程序正在从阿拉伯语数据库中获取一个属性,当我尝试保存文件并根据此属性重命名它时,我得到了这些字符(سين2Ù...Ø ̈ني Ø ̈) 而不是 (مبني ب) 但是,当我尝试打印它时,结果是 (مبني ب) 而不是 (سين2Ù...Ø ̈ني Ø ̈)这是我保存文件的代码:

    $project = Project::find(1);; //Model Project
    $destinationPath = 'ProjectPictures/' .$project->name . '/';//the name attribute is in arabic 
    $file =$request->file('image'); //image to be saved in arabic named directory
    $file->move($destinationPath, 'image.jpg');

我正在使用utf8_general_ci用于表排序规则,将utf8用于默认字符集,phpmyadmin,并且将Windows 8用于我的操作系统

使用 iconv 函数

عن

تجربة اتحدث ونحلت معي

$fileName=iconv('utf-8','windows-1256', $file->getClientOriginalName());
$file->storeAs("images/"), $fileName);

ادعيلي

尝试:

$project = Project::find(1); //Model Project
$encoding = mb_detect_encoding($project->name);
$destinationPath= iconv($encoding, "UTF-8", "ProjectPictures/".$project->name);
$file =$request->file('image'); //image to be saved in arabic named directory
$file->move($destinationPath, 'image.jpg');