UI設計したり、ウェブシステムを開発したりします。 

SQL見るだけクエリ#248 Exceptionクラスのオブジェクトを生成してプログラムの実行を停止

記入日:2023-09-13 編集日:2023-09-13

Exceptionクラスのオブジェクトを生成してプログラムの実行を停止する方法ついて解説をしてみようと思います。

この記事を読むと(約5分)
Exceptionクラスのオブジェクトを生成してプログラムの実行を停止する方法をイメージできます。

Exceptionのオブジェクトを生成してプログラムの実行を停止

Exceptionクラスのオブジェクトを生成して、プログラムの実行を停止させる構文は、次のとおりです。

throw new Exception('例外メッセージ');

この構文では、Exceptionクラスのオブジェクトを生成して、例外メッセージを設定します。そして、プログラムの実行を停止させます。

例外が発生した場合、PHPは、例外を発生させた関数の呼び出し元を検索します。呼び出し元で、catchブロックが見つかった場合は、catchブロックに処理が移ります。catchブロックでは、Exceptionクラスのオブジェクトを受け取ることができます。

catchブロックで例外を処理するには、getMessageメソッドを使用して、例外メッセージを取得し、適切な処理を行います。

たとえば、次のコードは、ユーザー入力のチェックを行うコードです。

$input = readline('数値を入力してください:');

try {
  // ユーザー入力のチェック
  if (!is_numeric($input)) {
    throw new Exception('入力された値は数値ではありません。');
  }
} catch (Exception $e) {
  // 例外が発生した場合の処理
  echo $e->getMessage();
}

このコードでは、readline関数を使用して、ユーザーから入力された値を取得しています。is_numeric関数を使用して、入力された値が数値かどうかをチェックしています。入力された値が数値でない場合、Exceptionクラスのオブジェクトを生成して、プログラムの実行を停止させています。

catchブロックでは、例外が発生した場合に処理を行うために、Exceptionクラスのオブジェクトを受け取ります。getMessageメソッドを使用して、例外メッセージを取得し、echo関数で出力しています。

このコードでは、入力された値が数値でない場合、ユーザーに入力をやり直してもらうようにしています。

このように、Exceptionクラスのオブジェクトを生成して、プログラムの実行を停止させることで、ユーザー入力のチェックや、プログラムの実行中に発生した異常な状況の処理を行うことができます。

また、getMessage()メソッドは、Exceptionクラスのオブジェクトのインスタンスから例外メッセージを取得するためのメソッドです。例外が発生した場合、このメソッドが呼び出され、例外メッセージが取得されます。

つまり、$exception->getMessage();は、例外を発生させた側で使用される構文です。一方、$e->getMessage();は、catchブロックで捕捉された例外から例外メッセージを取得するための構文です。

これらの構文を適切に使用することで、プログラムの信頼性を高めることができます。

SQLの使いどころ

サイトに大量の情報を掲載することは、ユーザーにとってとても便利なことです。しかし、情報が多すぎると、目的の情報を見つけるのが困難になります。そのため、SQLを使用することで、情報を効率的に管理することができます。

SQLを使用することで、データベース内の情報を検索したり、フィルタリングしたりすることができます。これにより、ユーザーは目的の情報をスムーズかつ簡単に見つけることができます。

また、SQLを使用することで、データを集計したり、統合したりすることもできます。これにより、ユーザーはさまざまな視点から情報を分析することができます。つまり、サイトに多くの情報を掲載することが重要である一方で、その情報を効率的かつ簡単に管理することが求められる場合には、SQLが不可欠であるといえます。

KK

機械工学を専攻。工業デザイナーとして、国内及び海外の自動車・搬送ラインの設計などに従事した後、2003年にウェブシステム会社を設立。UI設計やウェブシステムの開発、DX化のディレクションなどを行っています。