try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう by 梶川 琢馬

PHPerKaigi 2025
レギュラートーク(20分)

try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう

kajitack 梶川 琢馬 kajitack
1

PHPではtry-catchを使った例外処理が一般的ですが、「この例外はどのレイヤーで処理すればいいのか?」や「どの場面で例外を使うべきなのかが曖昧だ…」と感じたことはありませんか?例外の種類や扱い方が曖昧だと、設計の混乱やコードの保守性低下を招きます。この課題に対するヒントとして、Rustなどの言語で採用されているResult型の考え方があります。

Result型は、成功と失敗を型として扱い、例外に頼らずエラーを管理する手法です。これにより、エラーの種類や処理責任が明確になり、設計の一貫性を保ちながら保守性を高めることができます。このセッションでは、Result型をPHPに応用する方法を具体例を交えて解説します。

取り上げる内容:

  • 例外の種類や扱い方が曖昧になる原因とその解消方法
  • Result型の基本的な考え方とPHPでの実装方法
  • try-catch採用プロジェクトでも活かせる学び

例外の扱いをもっと明確にし、エラー処理を改善するヒントをお持ち帰りください!