0

私のスクリプトでは、ファイルを削除する必要がありますが、そこにある場合とない場合があります。

unlink($path);

実際の unlink(2) と同様に、PHP の unlink()はエントリがあればリンクを解除します。しかし、そうでない場合、PHP は E_WARNING レベルで (私の目的には) 役に立たないメッセージをログに記録します... これは一部の人にとっては良いことですが、私にとってはそうではありません :(

C でプログラミングすると、errno を調べて、この場合は ENOENT を単に無視することができました。PHP でできること — この警告のログを抑制する方法は?

リンクを解除しようとする前にファイルをチェックしたくありません — そうすることで、見た目以外の理由で別のファイルシステムトラバーサルが追加されます:

if (file_exists($path))
    unlink($path);

より良い方法はありますか?

4

2 に答える 2

3

式の前に @ を付けて、その式だけの警告を抑制することができます (例: @unlink($path);)。

于 2013-06-05T18:16:44.590 に答える