>>283,284,286
ありがとうございます。おかげですっきりしてきました。
>>ここの例を参考にしてErrorExceptionを補足すればいい
set_error_handlerとかは、クラスライブラリを作成する側で使ってはいけませんよね?
クラスライブラリの利用者やアプリの開発者側で使うものですよね??
ということで、クラスライブラリの方では、先ほどのpreg_matchの例だと
if (preg_match( ) === false) {
 $detail = error_get_last();
 throw new ErrorException($detail['message'], 0, $detail['code'], $detail['line'], $detail['file']);
}
で、こんな感じで例外に全部変換しておきます。