php操作JSON格式数据的实现代码

前端之家收集整理的这篇文章主要介绍了php操作JSON格式数据的实现代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

知识点:
1、JSON数据格式介绍
2、对数据编码成JSON格式
3、对JSON数据进行解码,并操作
JSON数据格式表示方式如下:
<div class="codetitle"><a style="CURSOR: pointer" data="46842" class="copybut" id="copybut46842" onclick="doCopy('code46842')"> 代码如下:

<div class="codebody" id="code46842">
{ "programmers": [
  { "firstName": "Brett","lastName":"McLaughlin","email": "aaaa" },
  { "firstName": "Jason","lastName":"Hunter","email": "bbbb" },
  { "firstName": "Elliotte","lastName":"Harold","email": "cccc" }
  ],
  "authors": [
  { "firstName": "Isaac","lastName": "Asimov","genre": "science fiction" },
  { "firstName": "Tad","lastName": "Williams","genre": "fantasy" },
  { "firstName": "Frank","lastName": "Peretti","genre": "christian fiction" }
  ],
  "musicians": [
  { "firstName": "Eric","lastName": "Clapton","instrument": "guitar" },
  { "firstName": "Sergei","lastName": "Rachmaninoff","instrument": "piano" }
  ] }

PHP将数据编码成JSON格式:
<div class="codetitle"><a style="CURSOR: pointer" data="38556" class="copybut" id="copybut38556" onclick="doCopy('code38556')"> 代码如下:
<div class="codebody" id="code38556">
<?PHP
//PHP中用数组表示JSON格式数据
$arr = array(
'firstname' => iconv('gb2312','utf-8','非诚'),
'lastname' => iconv('gb2312','勿扰'),
'contact' => array(
'email' =>'fcwr@jb51.cc',
'website' =>'//www.jb51.cc',
)
);
//将数组编码成JSON数据格式
$json_string = json_encode($arr);
//JSON格式数据可直接输出
echo $json_string;
?>

需要指出的是,在非UTF-8编码下,中文字符将不可被encode,结果会出来空值,所以,如果你使用 gb2312编写PHP代码,那么就需要将包含中文内容使用iconv或者mb转为UTF-8再进行json_encode。
输出:(JSON格式)
{"firstname":"\u975e\u8bda","lastname":"\u52ff\u6270","contact":{"email":"fcwr@jb51.cc","website":"http:\/\/www.jb51.cc"}}
PHP对JSON数据进行解码并处理:
<div class="codetitle"><a style="CURSOR: pointer" data="16530" class="copybut" id="copybut16530" onclick="doCopy('code16530')"> 代码如下:
<div class="codebody" id="code16530">
<?PHP
//PHP中用数组表示JSON格式数据
$arr = array(
'firstname' => iconv('gb2312',
)
);
//将数组编码成JSON数据格式
$json_string = json_encode($arr);
//将JSON格式数据进行解码,解码后不是JSON数据格式,不可用echo直接输出
$obj = json_decode($json_string);
//强制转化为数组格式
$arr = (array) $obj;
//按数组方式调用里面的数据
echo iconv('utf-8','gb2312',$arr['firstname']);
echo '
';
//输出数组结构
print_r($arr);
?>

输出
非诚
Array ( [firstname] => 闈炶瘹 [lastname] => 鍕挎壈 [contact] => stdClass Object ( [email] => fcwr@jb51.cc [website] => //www.jb51.cc ) )

原文链接:https://www.f2er.com/php/27446.html
JSON

猜你在找的PHP相关文章