在php中,可以使用json_encode()函數將資料轉換為json格式,該函數能對PHP變數進行JSON編碼,傳回JSON格式數據,語法「json_encode($value[,$options]) 」;如果轉化失敗,則會傳回FALSE。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
在php中,可以使用json_encode()函數將資料轉換為json格式。
json_encode()函數可以對PHP變數進行JSON編碼,傳回JSON格式資料;如果轉換失敗,則會傳回FALSE。
此函數接受一個必要參數和一個可選參數:
json_encode ( $value [, $options = 0 ] )
參數
value: 要編碼的值。此函數只對 UTF-8 編碼的資料有效。
options:由以下常數組成的二進位遮罩:JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK,JSON_ND4_PRINT, JSLL#WFECTWECT說明:
傳回字串類型,包含了 value 值JSON 形式的表示。
編碼受傳入的 options 參數影響,而此外浮點值的編碼則依賴 serialize_precision。
<?php header('content-type:text/html;charset=utf-8'); $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($arr); var_dump(json_encode($arr)); ?>
範例2:將PHP 物件轉換為JSON 格式資料
<?php header('content-type:text/html;charset=utf-8'); class Emp { public $name = ""; public $hobbies = ""; public $birthdate = ""; } $e = new Emp(); $e->name = "sachin"; $e->hobbies = "sports"; $e->birthdate = date('m/d/Y h:i:s a', strtotime("8/5/1974 12:20:03")); echo json_encode($e); ?>
#範例3: json_encode() 函數中 options 參數的用法
<?php header('content-type:text/html;charset=utf-8'); $a = array('<foo>',"'bar'",'"baz"','&blong&', "\xc3\xa9"); echo "Normal: ", json_encode($a), "<br>"; echo "Tags: ", json_encode($a, JSON_HEX_TAG), "<br>"; echo "Apos: ", json_encode($a, JSON_HEX_APOS), "<br>"; echo "Quot: ", json_encode($a, JSON_HEX_QUOT), "<br>"; echo "Amp: ", json_encode($a, JSON_HEX_AMP), "<br>"; echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "<br>"; echo "All: ", json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "<br><br>"; $b = array(); echo "Empty array output as array: ", json_encode($b), "<br>"; echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "<br><br>"; $c = array(array(1,2,3)); echo "Non-associative array output as array: ", json_encode($c), "<br>"; echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "<br><br>"; $d = array('foo' => 'bar', 'baz' => 'long'); echo "Associative array always output as object: ", json_encode($d), "<br>"; echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "<br><br>"; ?>
推薦學習:《
PHP影片教學》
以上是php怎麼將資料轉換為json格式的詳細內容。更多資訊請關注PHP中文網其他相關文章!