次のディレクトリ構造を取ります。
- Parent1
- 子フォルダ
- 子フォルダ1
- 子フォルダ2
- 子フォルダ
子フォルダ2へのパスは次のようになります。
Parent/Child folder/Child Folder 2
ただし、別の有効なパスも
Parent/Child folder/Child Folder 1/../Child Folder 2
パスを「単純化」する方法、または次のようなパスを変換する方法はありますか?
Parent/Child folder/Child Folder 1/../Child Folder 2
に
Parent/Child folder/Child Folder 2
opendir($directory)
私はあなたに与えるハンドルからファイル名を抽出する方法を見つけようとしていましたが、私はまだこれを行う方法を見つけていません。また、「単純化」よりもいくつかの用語やより良い表現が必要だと確信していますが、何を検索すればよいかわかりませんでした。「パスを単純化する」phpはあまり役に立ちませんでした。
編集:
realpathが完全なフルパスを提供することに気づきました。のように相対的なものは得られませんがParent/Child folder/Child Folder 2
、C:\Path\To\Server\Directory\Parent\Child Folder\Child Folder 2
それは少し残念ですが、文字列を操作することで元に戻すことができます。