定義済み定数
以下の定数が定義されています。
この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、
実行時に動的にロードされている場合のみ使用可能です。
次の定数は、json_last_error() が返すエラーの型を表します。
-
JSON_ERROR_NONE
(integer)
-
エラーが発生しませんでした。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_ERROR_DEPTH
(integer)
-
スタックの深さが最大に達しました。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_ERROR_STATE_MISMATCH
(integer)
-
アンダーフローあるいはモードの不一致が発生しました。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_ERROR_CTRL_CHAR
(integer)
-
制御文字エラー。おそらくエンコードが間違っています。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_ERROR_SYNTAX
(integer)
-
構文エラー。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_ERROR_UTF8
(integer)
-
正しくエンコードされていないなど、不正な形式の UTF-8 文字。
この定数は PHP 5.3.3 以降で使用可能です。
-
JSON_ERROR_RECURSION
(integer)
-
json_encode() に渡した配列やオブジェクトに再帰参照が含まれており、エンコードできません。
JSON_PARTIAL_OUTPUT_ON_ERROR
オプションを指定した場合は、
再帰参照の部分を NULL
にエンコードします。
この定数は PHP 5.5.0 以降で使用可能です。
-
JSON_ERROR_INF_OR_NAN
(integer)
-
json_encode() に渡した値の中に
NAN
あるいは INF
が含まれています。
JSON_PARTIAL_OUTPUT_ON_ERROR
オプションを指定した場合は、
これらの特殊な数値を 0 にエンコードします。
この定数は PHP 5.5.0 以降で使用可能です。
-
JSON_ERROR_UNSUPPORTED_TYPE
(integer)
-
json_encode() が対応していない型、たとえば resource などが渡されました。
JSON_PARTIAL_OUTPUT_ON_ERROR
オプションを指定した場合は、
これらを NULL
にエンコードします。
この定数は PHP 5.5.0 以降で使用可能です。
次の定数は、
json_encode() のオプションとして組み合わせて使用します。
-
JSON_HEX_TAG
(integer)
-
すべての < および > をそれぞれ \u003C および \u003E に変換します。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_HEX_AMP
(integer)
-
すべての & を \u0026 に変換します。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_HEX_APOS
(integer)
-
すべての ' を \u0027 に変換します。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_HEX_QUOT
(integer)
この定数は PHP 5.3.0 以降で使用可能です。
-
すべての " を \u0022 に変換します。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_FORCE_OBJECT
(integer)
-
非連想配列を使用した場合に、配列ではなくオブジェクトを出力します。
出力を受け取る側がオブジェクトを期待しており、配列が空っぽである場合などに特に便利です。
この定数は PHP 5.3.0 以降で使用可能です。
-
JSON_NUMERIC_CHECK
(integer)
-
数値形式の文字列を数値としてエンコードします。
PHP 5.3.3 以降で使用可能です。
-
JSON_BIGINT_AS_STRING
(integer)
-
大きな整数値を、文字列型でエンコードします。
PHP 5.4.0 以降で使用可能です。
-
JSON_PRETTY_PRINT
(integer)
-
返される結果の書式を、スペースを使って整えます。
PHP 5.4.0 以降で使用可能です。
-
JSON_UNESCAPED_SLASHES
(integer)
-
/ をエスケープしません。
PHP 5.4.0 以降で使用可能です。
-
JSON_UNESCAPED_UNICODE
(integer)
-
マルチバイト Unicode 文字をそのままの形式で扱います (デフォルトでは \uXXXX にエスケープします)。
PHP 5.4.0 以降で使用可能です。
-
JSON_PARTIAL_OUTPUT_ON_ERROR
(integer)
-
エンコード不可能な値は代替値に置き換え、処理を続行します。
PHP 5.5.0 以降で使用可能です。
-
JSON_PRESERVE_ZERO_FRACTION
(integer)
-
float 型の値を常に float 値としてエンコードするようにします。
PHP 5.6.6 以降で使用可能です。