例えばPop3でメールを取得する場合、以前書いたこの記事のような方法で取得します。
取得した際、件名などのヘッダー情報は、
$message->subject
としてとりだすことが可能です。
しかし、取り出そうとしたヘッダー情報がない場合は、
nullが返ってくるわけではなく、exceptionが発生します。
そのため、try catchを大きなくくりでしか行っていないと、
大部分の処理が実行されないという結果になります。
件名、本文がないメールも存在するので、ここは注意が必要です。
私もこれで、しばらく作りかけのプログラムが止まっていました。