【PHP8.x】json_last_error_msg関数の使い方

作成日: 更新日:

json_last_error_msg関数は、直近のjson_encode関数またはjson_decode関数で発生したエラーに対応する、人間が読める形式のエラーメッセージを返します。PHPにおけるJSON処理において、エラーが発生した場合、その原因を特定するために非常に重要な役割を果たします。

JSON(JavaScript Object Notation)は、データ交換形式として広く利用されており、PHPでもjson_encode関数でPHPのデータをJSON形式に変換したり、json_decode関数でJSON形式のデータをPHPのデータ構造に変換したりできます。しかし、これらの関数は、JSONの形式が正しくない場合や、エンコード・デコード時に問題が発生した場合にエラーを発生させることがあります。

json_last_error関数は、エラーコードを数値で返す一方、json_last_error_msg関数は、そのエラーコードに対応する具体的なエラーメッセージを文字列で返します。例えば、「Syntax error」、「Malformed UTF-8 characters, possibly incorrectly encoded」といった、問題の内容を理解しやすいメッセージを取得できます。

この関数は引数を必要としません。エラーが発生していない場合は "No error" というメッセージを返します。システムエンジニアがJSON関連のエラーをデバッグする際に、エラーメッセージをログに出力したり、ユーザーに表示したりすることで、問題の特定と解決を迅速に進めることができます。より詳細な情報を得るためには、json_last_error関数でエラーコードを確認し、必要に応じて関連ドキュメントを参照すると良いでしょう。

基本的な使い方

構文(syntax)

json_last_error_msg(): string

引数(parameters)

引数なし

引数はありません

戻り値(return)

string

直前の json_encode() または json_decode() 関数の実行結果として発生したエラーメッセージを文字列で返します。エラーが発生しなかった場合は、"No errors" という文字列を返します。

【PHP8.x】json_last_error_msg関数の使い方 | いっしー@Webエンジニア