P粉4209586922023-08-25 10:43:00
###いいえ。###
要件に従い、SQL エラーで例外をスローするように mysqli ドライバーに指示できるはずですが、
MYSQLI_REPORT_ERROR がまだ有効になっていない場合は有効にする必要があります....
リーリー
エラー時に例外をスローするようになりました。失敗時の戻り値をチェックする必要はありません (例外はいずれにせよスローされます)。
リーリー
(注: 再スローされた例外の
を $SQL
に変更しました。)
P粉5494120382023-08-25 00:06:47
しばらく前に、私はこの問題を正常に解決しました。 他の回答で指摘されているように、
リーリーは、mysqli に例外をスローするように指示する正しい方法です。
すべてのクエリで try-catch をラップしないように注意してください。これは非常によくある誤解です。例外を使用し始めたら、どこでも try と catch をスローし始める必要があります。対照的に、try-catch は注意して使用する必要があります。ただし、エラーの 99% はサイト上で処理されるべきではなく、サイト全体のエラー ハンドラーによって処理される必要があります。このトピックについて詳しくは、私の PHP エラー報告 記事をご覧ください。