- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プログラム内で処理中断後も継続処理を行うには?)
プログラム内で処理中断後も継続処理を行うには?
このQ&Aのポイント
- プログラム内で処理を中断した場合も、継続処理を行う方法について
- 処理中断後も継続処理が必要な場合には、return文を使用する
- 処理を中断せずに次の処理を継続するためには、return文を適切に使う必要がある
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
処理全体を終了(exit)させるのはメインルーチンの仕事ですので、関数内でその関数の処理を終了させる場合はreturnで呼出元に処理を戻します。 関数内で何らかのエラーが発生して処理の実行が困難になった場合は、呼出元にエラーを知らせる戻り値を返してメインルーチン内で戻り値の判断を行って処理を終了させるか、関数内でExceptionを投げてメインルーチン内のエラー処理に事後の処理を委ねます。
その他の回答 (2)
- shimix
- ベストアンサー率54% (865/1590)
回答No.3
関数はreturnで戻るのが基本です。 #exitで終わるくらいのケースなら、dieで止める方が多いと思います。 処理した結果どうだったか(ちゃんと処理できたかどうか)も含めて呼び出し元に返り値で戻します。returnを省略したらnullを返しますが、「何かあって中断した」のであれば、return false; などとして、あとで(必要があれば)見分けられるようにしておくべきです。
質問者
お礼
ありがとうございました。return で、戻り値を入れて使うことにします。
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
>以降のプログラムを引き続き処理する場合には、returnを使うものなのでしょうか? フローを最後までまわしたくないなら、手っ取り早いのはreturnです exitは強制終了なので余程のことがない限りつかわないでしょう <?PHP @(1/0) or exit("error!"); ?>
質問者
お礼
そうですね。exitは、なるべく使わないようにします。
お礼
おっしゃるとおり、exitは、メインルーチン内で使うものですね。関数内では、戻り値を書き込み、メインルーチン内で判断することにしますね。