無能プログラマの開発日誌

無能からの脱却をはかるため、畑を耕すように自分を開拓しようと考えたプログラマの開発メモ

ファイルを開く際の「@」と「or」

ファイルを開く処理:
$fp=@fopen("files/20030115.txt","w") or die("ファイルのオープンに失敗しました");
上記処理でのfopenの前の@と後ろのorについて

「@」はfopenでエラーが起きてもエラーは無視され
エラーメッセージは表示されませんという意味。
「or」はファイルオープンが正常にできなかったらその後の処理
ここでは"ファイルのオープンに失敗しました"と表示して
dieプログラムを終了します。

これは論理演算式の方式で、最初にファイルオープンを実行し、これがtrue(真)だったら、orが成立するので(どちらかが真)後ろのdieは無視されます