0

在这里,我找到了一个很好的解决方案,用于递归更改一个文件夹Randomseed 解决方案的文件的编码

$path = realpath('C:\\your\\path');

$iterator = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator($path), 
    RecursiveIteratorIterator::SELF_FIRST
);

foreach($iterator as $fileName => $file){
    if($file->isFile())
        file_put_contents(
            $fileName,
            iconv('ISO-8859-7', 'UTF-8', file_get_contents($fileName))
        );
}

但有一个问题。每个文件都被更改,甚至是图像,它们稍后不会显示。例如,如何编辑它以仅更改.php文件?

非常感谢!

4

1 回答 1

0

如果您只想遍历 .php 文件,只需查看文件的扩展名。

    foreach($iterator as $fileName => $file){
    if($file->isFile() && $file->getExtension() == "php")
        file_put_contents(
            $fileName,
            iconv('ISO-8859-7', 'UTF-8', file_get_contents($fileName))
        );
   }
于 2017-07-07T22:20:02.027 回答