您好,登錄后才能下訂單哦!
本篇文章為大家展示了php json常用方法有哪些,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
php json常用方法:1、json_encode(),用于對JSON格式的字符串進行解碼;2、json_encode(),用于對JSON格式的字符串進行解碼;3、json_last_error(),用于返回最后發生的錯誤。
本教程操作環境:windows7系統、PHP7.1版,DELL G3電腦
php json常用方法:
1、json_encode()
PHP json_encode() 用于對變量進行 JSON 編碼,該函數如果執行成功返回 JSON 數據,否則返回 FALSE 。
語法
string json_encode ( $value [, $options = 0 ] )
示例:
<?php $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr); ?>
輸出結果:
{"a":1,"b":2,"c":3,"d":4,"e":5}
2、json_encode()
json_decode() 函數用于對 JSON 格式的字符串進行解碼,并轉換為 PHP 變量。
語法:
mixed json_decode ($json_string [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
參數:
json_string: 待解碼的 JSON 字符串,必須是 UTF-8 編碼數據
assoc: 當該參數為 TRUE 時,將返回數組,FALSE 時返回對象。
depth: 整數類型的參數,它指定遞歸深度
options: 二進制掩碼,目前只支持 JSON_BIGINT_AS_STRING 。
示例:
<?php $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json)); var_dump(json_decode($json, true)); ?>
輸出結果:
object(stdClass)#1 (5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) } array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }
3、json_last_error()
json_last_error — 返回最后發生的錯誤
語法:
json_last_error()
如果有,返回 JSON 編碼解碼時最后發生的錯誤。會返回一個整型(integer),這個值會是以下的常量之一:
常量 | 含義 | 可用性 |
---|---|---|
JSON_ERROR_NONE | 沒有錯誤發生 | |
JSON_ERROR_DEPTH | 到達了最大堆棧深度 | |
JSON_ERROR_STATE_MISMATCH | 無效或異常的 JSON | |
JSON_ERROR_CTRL_CHAR | 控制字符錯誤,可能是編碼不對 | |
JSON_ERROR_SYNTAX | 語法錯誤 | |
JSON_ERROR_UTF8 | 異常的 UTF-8 字符,也許是因為不正確的編碼。 | PHP 5.3.3 |
JSON_ERROR_RECURSION | One or more recursive references in the value to be encoded | PHP 5.5.0 |
JSON_ERROR_INF_OR_NAN | One or more NAN or INF values in the value to be encoded | PHP 5.5.0 |
JSON_ERROR_UNSUPPORTED_TYPE | 指定的類型,值無法編碼。 | PHP 5.5.0 |
JSON_ERROR_INVALID_PROPERTY_NAME | 指定的屬性名無法編碼。 | PHP 7.0.0 |
JSON_ERROR_UTF16 | 畸形的 UTF-16 字符,可能因為字符編碼不正確。 | PHP 7.0.0 |
示例:
<?php // 一個有效的 json 字符串 $json[] = '{"Organization": "PHP Documentation Team"}'; // 一個無效的 json 字符串會導致一個語法錯誤,在這個例子里我們使用 ' 代替了 " 作為引號 $json[] = "{'Organization': 'PHP Documentation Team'}"; foreach ($json as $string) { echo 'Decoding: ' . $string; json_decode($string); switch (json_last_error()) { case JSON_ERROR_NONE: echo ' - No errors'; break; case JSON_ERROR_DEPTH: echo ' - Maximum stack depth exceeded'; break; case JSON_ERROR_STATE_MISMATCH: echo ' - Underflow or the modes mismatch'; 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_UTF8: echo ' - Malformed UTF-8 characters, possibly incorrectly encoded'; break; default: echo ' - Unknown error'; break; } echo PHP_EOL; } ?>
輸出結果:
Decoding: {"Organization": "PHP Documentation Team"} - No errors Decoding: {'Organization': 'PHP Documentation Team'} - Syntax error, malformed JSON
上述內容就是php json常用方法有哪些,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。