1

次のスクリプトを用意します。

<?php

if ($handle = opendir('files/')) {
    while (false !== ($fileName = readdir($handle))) {
        $newName = str_replace("SKU#","",$fileName);
        rename(fileName, $newName);
    }
    closedir($handle); } ?>

私のスクリプトは iss のルート ディレクトリにあります。

inetpub/wwwroot

そして、結果として、wwwroot までの 1 レベルであるフォルダー files/ にアクセスしようとしています。と呼ばれる1つの画像が含まれています:

"WV1716BNSKU#.zoom.1"

私はWindows OSを使用していますが、なぜこれが機能しないのか、コードはファイルに見えます。

4

1 に答える 1

1

どのようなエラーが発生しますか?PHPがすべてのエラーを表示するように設定されていることを確認してください。

すべてのパスは相対的であるため、スクリプトも名前を変更するファイルと同じフォルダーにある必要があります。

これを試して:

if ($handle = opendir('./')){

    while (false !== ($fileName = readdir($handle))){
        $newName = str_replace("SKU#", "", $fileName);
        rename($fileName, $newName);
    }

    closedir($handle);
}
于 2012-07-17T12:11:09.940 に答える