2

現在、ウィンドウファイルシステムに似たフォルダーを作成する必要があります。

例: フォルダーが存在する場合、最後に (1) を追加します。(1) が存在する場合、最後に (2) を追加します。問題は、PHP に標準関数があるか、独自の関数を作成する必要があるかということです。

if (isdir($folderPath)) {

        $folderPath =  ...special handling or any PHP standard function ..
        mkdir($folderPath);

}

PHPマニュアルを読んで、これまでのところ、これを処理するための同様のパラメータはありませんか? mkdir以外に機能する機能はありますか?ありがとう

4

1 に答える 1

3

これを行う関数を知りません。ブルートフォースアプローチが思い浮かびます:

function make_filename($name) {
    if (file_exists($name)) {
        $i = 0;
        do {
            $testname = sprintf("%s (%d)", $name, ++$i);
        }
        while (file_exists($testname));
        return $testname;
    }
    return $name;
}

mkdir(make_filename("test"));

多くのファイル名の重複が予想される場合、これはお勧めしません。

于 2013-06-24T10:32:24.500 に答える