首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 中的 JSON 應用指南:編碼、解碼與前後端交互

     編輯:PHP 綜合知識

什麼是 JSON

JSON(JavaScript Object Notation)是一種輕量級資料交換格式,結構類似 PHP 陣列,易於人閱讀、機器解析。它作為 PHP 後端與 JavaScript 前端的資料橋樑,比 XML 更簡潔高效。

PHP 內建 JSON 函數(PHP 5.2+)

  • json_encode():將 PHP 變數(陣列/物件)編碼為 JSON 字串。
  • json_decode():將 JSON 字串解碼為 PHP 物件(預設)或陣列(第二參數設 true)。

編碼範例

<?php
$arr = array(
    'name' => '陳毅鑫',
    'nick' => '深空',
    'contact' => array(
        'email' => 'shenkong at qq dot com',
        'website' => 'https://www.devdao.com',
    )
);
$json_string = json_encode($arr);
echo $json_string;
// 輸出: {"name":"\u9648\u6bc5\u946b","nick":"\u6df1\u7a7a","contact":{"email":"shenkong at qq dot com","website":"http:\/\/www.devdao.com"}}
?>

注意:json_encode 僅支援 UTF-8 編碼。若原始碼為 GB2312/Big5,需先用 iconv 或 mb_convert_encoding 轉為 UTF-8 再編碼,否則中文會變空值。

解碼範例

<?php
$obj = json_decode($json_string);
print_r($obj);
// 訪問屬性: $obj->name

// 若需轉為陣列
$arr = (array) $obj;
// 或
$arr = json_decode($json_string, true);
print_r($arr);
?>

前端 JavaScript 使用

<script>
var arr = {"name":"\u9648\u6bc5\u946b","nick":"\u6df1\u7a7a","contact":{"email":"shenkong at qq dot com","website":"http:\/\/www.devdao.com"}};
alert(arr.name); // 直接以物件屬性存取
</script>

AJAX 應用場景

伺服端回傳 JSON 字串而非 XML,前端 eval() 或 JSON.parse() 即可直接操作資料,極大簡化 AJAX 資料處理邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved