PHPでディレクトリリストの取得補足

※問題があるので、こちらで修正しました

このような関数を作った



しかし、どうしても拡張子がコロンで始まるファイル名を含める事ができない。どうしてかと調べていたが、こう言う理由のようだ。

`.' で始まるパス名では、この文字は陽にマッチさせなければならない。 (つまり `rm *' は .profile を削除しない。また `tar c *' ではすべてのファイルはアーカイブされない。 `tar c .' の方が良い。)
> GLOB - JM Project より

つまり、明示しなければいけないような仕様になっているのだろうと了解した。PC-UNIX系のシステムではピリオドで始まるファイルは特別な意味を持つものなのだろう。バックアップや設定ファイル名などで見かけた。

フラグには以下に示すものも指定できる。これらは POSIX.2 では定義されてい
ないが GNU で拡張されたものである。
GLOB_PERIOD

先頭のピリオドはメタキャラクタにマッチする。
> GLOB - Section: Linux Programmer's Manual (3) - JM Project より

このオプションでは対応してはいなかった。改定されない限り、まじめに指定パス以下のファイルを扱うのならば、ディレクトリハンドル系の関数で組んだほうがいいようである。

関連エントリ