如何在Scandir php的路径地址中使用UTF8字符

时间:2017-07-15 15:37:21

标签: php utf-8 yii yii2

如何在Scandir php的路径地址中使用UTF8字符

我的文件夹名称为: 61-تستتتتتتتتتتتتتتتتت

我在scandir和DirectoryIterator中有错误。

将文件夹名称更改为 61 修复我的问题但需要全名。

$folder = '61-تست تست';
        $path    = 'files/'.$folder;

print_r(scandir($path));

        foreach (new \DirectoryIterator($path) as $file) {
            if(!$file->isDir())
            {
                echo $file->getFilename() . "<br>";
            }
        }

错误:

    UnexpectedValueException

The system cannot find the file specified. (code: 2)

DirectoryIterator::__construct(D:/wamp64/www/project/web/files/61-تست تست,D:/wamp64/www/project/web/files/61-تست تست): The system cannot find the file specified. (code: 2)

1 个答案:

答案 0 :(得分:1)

ScanDir在PHP 5.6 LINUX 中工作良好,但仅使用FTP上传文件,并且在PHP 5.6窗口中无法正常工作以在Windows中修复此问题,您使用的是WFIO ext或升级到PHP 7.1