Php Yii2:ZipArchive的'addFromString'中不支持阿拉伯语文件名

Php Yii2:ZipArchive的'addFromString'中不支持阿拉伯语文件名,php,zip,yii2,ziparchive,Php,Zip,Yii2,Ziparchive,我使用了ZipArchive来创建zip。但是我在阿拉伯语中分配文件名时遇到了问题,这是不受支持的 我想得到像21بينل.pdf这样的文件名,但我得到的是21_6;.pdf 我有以下问题 但仍然不起作用 我的示例代码: <?php $zip = new ZipArchive; $res = $zip->open('test.zip', ZipArchive::CREATE); $fileName = $v->certificateLetter-

我使用了
ZipArchive
来创建zip。但是我在阿拉伯语中分配文件名时遇到了问题,这是不受支持的

我想得到像21بينل.pdf这样的文件名,但我得到的是21_6;.pdf

我有以下问题

但仍然不起作用

我的示例代码:

<?php
     $zip = new ZipArchive;
     $res = $zip->open('test.zip', ZipArchive::CREATE);
     $fileName = $v->certificateLetter->fileName.'/'.$v->dslStu->stu_unique_id.'_'.'بينل';
     $zip->addFromString($fileName.'.pdf', $letterString);
     $zip->close();
?>

提前感谢。

试试这个:

$zip = new ZipArchive;
$res = $zip->open('test.zip', ZipArchive::CREATE);
$fileName = $v->certificateLetter->fileName.'/'.$v->dslStu->stu_unique_id.'_'.'بينل';
iconv('CP1256', 'utf-8', $fileName).PHP_EOL;
$zip->addFromString($fileName.'.pdf', $letterString);
$zip->close();

添加
setlocale(LC_ALL,'he_IL.UTF-8')位于顶部并选中。例如:
iconv('cp866','utf-8',$filename)
使用
setlocale(LC_ALL,'he_IL.utf-8')
iconv('cp866','utf-8',$filename)
之后,我得到了filname,比如21。我已经阅读了上面的链接,但仍然不起作用。所以它是不同的。@GAMITG:您可以在这里检查您的语言:尝试阿拉伯语:iconv('cp1256','utf-8',$fileName);适用于MS-ARAB WINDOWS-1256的CP1256。。。更新答案@GAMITG