[PHP-users 15650]Re: unlink()でワイルドカード
IWASAKI Dai
dai @ tristan.jp
2003年 6月 3日 (火) 12:10:45 JST
いわさきといいます。
At Tue, 03 Jun 2003 11:08:19 +0900,
野口 亨 wrote:
> ワイルドカードに関して、拡張部分を除く基本的な部分はWindowsと同じですね。
> だとしたら、unlink("../../UserData/*.csv");でワーニングが出た理由が
> わかりません。
これを読むとWindows版PHPではunlinkでワイルドカードを使うことで、
複数のファイルの削除ができたようにも読めますが、どうですか?
手元のPHP 4.3.0 on Windows XPでは同じscriptではファイルの削除は
できませんでした。
> 大量のファイルがある場合、ワイルドカードを使い、
> 一度に削除できたほうが高速だと思うのですが、、、
いずれどこかでワイルドカードの展開をしなくちゃならいので、
高速にはならないでしょう。scriptが短くなることは確かですが。
FreeBSD上ですが、無理やり *.csv という名前のファイルを作って、
*.csv a.csv b.csv
の三つのファイルを用意して、 unlink("*.csv"); を実行すると
*.csvだけが削除されました。
勝手にワイルドカードを展開されても困る場合も出てくるということで。
# 無理やりなんで現実的な話じゃないでしょうけど
> #結論として、unlinkでは、ワイルドカードは使えないのですか?
> これだけは、PHPやLINUXのマニュアル等みてもわかりません。
> (使い方が明記していないのなら、使えないのでしょうと思いますが。)
使えないというか、ワイルドカードを展開するのはglobを使えば
どの関数でも対処できますよね。
---
To infinity and beyond...
いわさきだい <dai @ tristan.jp>
PHP-users メーリングリストの案内