ミライ・シンカ・ゼッタイ 〜 ミラィォカェルエンジニア乃開発日誌 〜

世のエンジニアの役に立つようなブログにしたいと考えたエンジニアのブログ

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

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

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

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