fopenが失敗した場合についてなんですが、
http://jp.php.net/manual/ja/function.fopen.php
オープンが失敗すると、関数は FALSE を返し、 E_WARNING レベルのエラーを発行します。

とのことですが、プログラム側で失敗した原因を知る方法はありませんか?