json_last_error

json tation tation

函式說明

(PHP5 >= 5.3.0)
返回最後一次以json編碼數據發生的錯誤。

函式定義

int json_last_error ( void )
返回最後一次發生的錯誤,如果遇到在以json編碼數據發生的錯誤。

參數

此函式沒有參數。

返回值

返回一個integer,此值是以下一個常數:

常數 意義 有效性
JSON_ERROR_NONE 沒有錯誤發生 
JSON_ERROR_DEPTH 超過了最大堆疊深度 
JSON_ERROR_CTRL_CHAR 發生控制特性錯誤,可能是有誤的編碼 
JSON_ERROR_STATE_MISMATCH 無效的或者是有缺陷的json 
JSON_ERROR_SYNTAX 發生語法錯誤 
JSON_ERROR_UTF8 有缺陷的UTF-8編碼特性,也可能是有誤的編碼 PHP 5.3.3

實例說明

json_last_error()函式對不同integer值返回的結果。
<?php
// A valid json string
$json&#91;&#93; = '{"Organization": "PHP Documentation Team"}';
// An invalid json string which will cause an syntax
// error, in this case we used ' instead of " for quotation
$json&#91;&#93; = "{'Organization': 'PHP Documentation Team'}";
foreach($json as $string)
{
echo 'Decoding: ' . $string;
json_decode($string);
switch(json_last_error())
{
case JSON_ERROR_DEPTH:
echo ' - Maximum stack depth exceeded';
break;
case JSON_ERROR_CTRL_CHAR:
echo ' - Unexpected control character found';
break;
case JSON_ERROR_SYNTAX:
echo ' - Syntax error, malformed JSON';
break;
case JSON_ERROR_NONE:
echo ' - No errors';
break;
}
echo PHP_EOL;
}
?>
以上例程會輸出:
Decoding: {"Organization": "PHP Documentation Team"} - No errors
Decoding: {'Organization': 'PHP Documentation Team'} - Syntax error, malformed JSON

相關詞條

相關搜尋

熱門詞條

聯絡我們