【PHP】file_get_contentsのエラーを抑制する方法

【環境】


【困ったところ】
存在するかどうかわからないユーザーID(番号)をパラメータにして
『users/show』APIを呼び出す際に、ユーザーが存在しなかった場合に
表示されるPHPのE_WORNINGをどうにかして消せないものかと
試行錯誤しました。

【コントローラ内のアクション】
$url = 'http://api.twitter.com/1/users/show.json?user_id=12345';
$json = file_get_contents($url);
//もしも12345番のユーザが存在しなかったら、画面にE_WORNINGが…orz


【失敗】
『file_exists()』で分岐させようとしたものの、失敗…。

if(file_exists($url)){
$json = file_get_contents($url);
} else {
//パラメータ付きのURLは、すべてFALSEになるらしい。
//たとえユーザが存在しても、こちらへ流れてくる。
}


【成功】
その名も『エラー抑制演算子』という『@』をつけるだけで
OKでした。

if($json = @file_get_contents($url)){
//ユーザが存在する
} else {
//ユーザは存在しない
}
たとえ確実にユーザが存在することが分かっていたとしても、
サーバー落ちやアクセス過多などによってファイルを読み込む
ことができずにエラーになることもあるようですから、
『file_exists』が正常に働いてくれないパラメータ付きのURLで
ファイルを読み込む場合は、『@』は必須だと思います。