Linux/Mac上で開発されていたコードをWindows上でXAMPP(Apache, MySQL, PHP)を使って動かそうとしたところ、動かないコードがありました。
それはファイル操作のrenameです。
windowsではファイルオープン中にrenameやunlinkでファイルをリネームしたり、削除したりすることができないようです。
Rubyのメーリングリストでも、話題になっていました。(PHPとは関係ないですが、プラットフォームの問題だと思いますので同じでしょう)
対応方法
対策としては、きちんとcloseしてからrename, unlinkすればOKでした。
また、Windowsでは、rename(old, new)としたときにnewのパスに既にファイルが存在していると、
エラーになるという報告もありますので、併せて気をつけたいですね。
UNIX互換OSばかり使っていると、Windowsでの開発のハマりどころを忘れてしまいそうです^^;
ではでは