私はファイル管理システムに取り組んでおり、同じ名前のファイルが存在する場合、通し番号などの自動バージョン管理を含めたいと考えています。ファイル名と拡張子の間に「-v0001」を挿入して、入ってくるバージョンの数を数えることを考えました。
$basename = pathinfo($filename, PATHINFO_BASENAME);
$fname = pathinfo($filename, PATHINFO_FILENAME);
while (filenameExists($basename)) {
//look for existing -vnnnn (at end of file name)
if (versioningExists($fname)) {
//roll number ahead, set bates number
} else {
//start bates numbering at 1
}
//insert bates version number (str_pad)
}
バージョン管理が存在するかどうかを確認するために正規表現パターンを使用すると考えています。
私の質問は次のとおりです。
- このような番号付けシステムを使用すると、どのような問題が発生する可能性がありますか?
- また、ファイル名のバージョン管理に対処するための代替手段は何ですか?
私はこれを一括インポート システムにするつもりです。そのため、必要がない場合にユーザーに一意のファイル名を与えるようにバグを報告したくありません。また、他のバージョン管理スキームの選択を含めるオプションがあります。私のシステムにはタグがあるため、ファイル名の重要性は低下していますが、まだ重要性はあると思います。