亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

php json_encode不支持對象私有屬性的解決方法

2020-03-22 19:13:52
字體:
來源:轉載
供稿:網友
本文介紹php json_encode不支持對象私有屬性的解決方法,json_encode可以把對象轉為json格式,使用json_decode可以還原為對象。

但如果對象內含有私有屬性,執行json_encode后,私有屬性會丟失。

例子:json_encode丟失對象私有屬性
 ?php// 用戶類html' target='_blank'>class user{ public $id = 1; public $name = fdipzone public $profession = programmer private $age = 18;}// 對象$oUser = new User;// json_encode$json = json_encode($oUser);echo $json;// json_decode$oUser = json_decode($json);var_dump($oUser);? 

輸出:

{ id :1, name : fdipzone , profession : programmer }object(stdClass)[2] public id = int 1 public name = string fdipzone (length=8) public profession = string programmer (length=10)

在執行json_encode后,私有屬性age丟失了。

json_encode后對象的私有屬性丟失解決方法

我們可以修改類,使其實現JsonSerializable抽象類的接口方法jsonSerialize,指定需要被序列化成JSON的數據。

關于JsonSerializable::jsonSerialize方法可參考網址:http://php.net/manual/zh/jsonserializable.jsonserialize.php

修改后代碼如下:

 ?php// 用戶類class user implements JsonSerializable{ public $id = 1; public $name = fdipzone public $profession = programmer private $age = 18; // 實現的抽象類方法,指定需要被序列化JSON的數據 public function jsonSerialize() { $data = []; foreach ($this as $key= $val){ if ($val !== null) $data[$key] = $val; } return $data;}// 對象$oUser = new User;// json_encode$json = json_encode($oUser);echo $json;// json_decode$oUser = json_decode($json);var_dump($oUser);? 

輸出:

{ id :1, name : fdipzone , profession : programmer , age :18}object(stdClass)[2] public id = int 1 public name = string fdipzone (length=8) public profession = string programmer (length=10) public age = int 18

在指定了需要被序列化成JSON的數據后,json_encode可以讀取到私有屬性age。

本文介紹php json_encode不支持對象私有屬性的解決方法,json_encode可以把對象轉為json格式,使用json_decode可以還原為對象。

但如果對象內含有私有屬性,執行json_encode后,私有屬性會丟失。

例子:json_encode丟失對象私有屬性
 ?php// 用戶類class user{ public $id = 1; public $name = fdipzone public $profession = programmer private $age = 18;}// 對象$oUser = new User;// json_encode$json = json_encode($oUser);echo $json;// json_decode$oUser = json_decode($json);var_dump($oUser);? 

輸出:

{ id :1, name : fdipzone , profession : programmer }object(stdClass)[2] public id = int 1 public name = string fdipzone (length=8) public profession = string programmer (length=10)

在執行json_encode后,私有屬性age丟失了。

json_encode后對象的私有屬性丟失解決方法

我們可以修改類,使其實現JsonSerializable抽象類的接口方法jsonSerialize,指定需要被序列化成JSON的數據。

關于JsonSerializable::jsonSerialize方法可參考網址:http://php.net/manual/zh/jsonserializable.jsonserialize.php

修改后代碼如下:

 ?php// 用戶類class user implements JsonSerializable{ public $id = 1; public $name = fdipzone public $profession = programmer private $age = 18; // 實現的抽象類方法,指定需要被序列化JSON的數據 public function jsonSerialize() { $data = []; foreach ($this as $key= $val){ if ($val !== null) $data[$key] = $val; } return $data;}// 對象$oUser = new User;// json_encode$json = json_encode($oUser);echo $json;// json_decode$oUser = json_decode($json);var_dump($oUser);? 

輸出:

{ id :1, name : fdipzone , profession : programmer , age :18}object(stdClass)[2] public id = int 1 public name = string fdipzone (length=8) public profession = string programmer (length=10) public age = int 18

在指定了需要被序列化成JSON的數據后,json_encode可以讀取到私有屬性age。

本文講解了php json_encode不支持對象私有屬性的解決方法 ,更多相關內容請關注php 。

相關推薦:

js 基礎 數據類型及轉換 進制 操作符

JavaScript中 with的用法

js和php嵌套

以上就是php json_encode不支持對象私有屬性的解決方法的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕日本精品| 国产一区二区三区在线观看网站| 中文字幕在线看视频国产欧美在线看完整| 97精品视频在线| 91精品久久久久久久| 日韩欧美国产网站| 日本精品va在线观看| 欧美理论电影在线观看| 日韩精品免费观看| 韩国美女主播一区| 国产精品99蜜臀久久不卡二区| 亚洲欧美国产精品| 亚洲成人免费在线视频| 欧美大片在线免费观看| 国产亚洲欧美日韩精品| 久久久免费精品视频| 欧美日韩中文字幕综合视频| 亚洲男人天堂2019| 91久久精品一区| 国产一区二区三区在线观看网站| 欧美高跟鞋交xxxxhd| 欧美激情网站在线观看| 国产在线观看不卡| 91在线播放国产| 精品国产福利在线| 国产综合色香蕉精品| 国产成人精品久久| 国产精品女主播视频| 欧美大片免费观看在线观看网站推荐| 美日韩丰满少妇在线观看| 疯狂做受xxxx欧美肥白少妇| 91最新在线免费观看| 亚洲一区二区三区四区在线播放| 欧美中文在线免费| 国产一区二区三区在线观看视频| 九色91av视频| 在线观看国产成人av片| 国产精品稀缺呦系列在线| 91av视频在线播放| 亚洲国产一区二区三区四区| 91经典在线视频| 97国产精品免费视频| 欧洲午夜精品久久久| 日韩av电影在线网| 亚洲性视频网址| 亚洲精品在线不卡| 欧洲美女7788成人免费视频| 久久精品91久久久久久再现| 中文字幕日韩精品在线观看| 亚洲欧美国产日韩天堂区| 久久成人精品电影| 国产精品亚洲片夜色在线| 欧美成人久久久| 久久影院资源网| 欧洲一区二区视频| 亚洲精品国产品国语在线| 国产欧美日韩精品在线观看| 亚洲国产精品免费| 亚洲精品国产精品乱码不99按摩| 韩剧1988免费观看全集| 日韩中文字幕第一页| 亚洲午夜精品久久久久久久久久久久| 亚洲精品一区二区久| 成人免费高清完整版在线观看| 97成人在线视频| 欧美在线一级视频| 91久久久在线| 欧美日韩国产一中文字不卡| 久久99久久99精品免观看粉嫩| 国产成人+综合亚洲+天堂| 日韩日本欧美亚洲| 亚洲第一精品电影| 中文字幕综合一区| 欧美成人性生活| 亚洲人线精品午夜| 久久影视三级福利片| 亚洲欧洲第一视频| 狠狠色狠狠色综合日日小说| 日韩中文字幕在线视频播放| 欧美疯狂xxxx大交乱88av| 一本色道久久综合狠狠躁篇怎么玩| 久久国产加勒比精品无码| 亚洲日韩中文字幕在线播放| 亚洲欧美一区二区三区情侣bbw| 欧美日韩国产中文精品字幕自在自线| 国产人妖伪娘一区91| 日韩h在线观看| 精品国产欧美一区二区五十路| 亚洲欧洲午夜一线一品| 亚洲japanese制服美女| 国产精品91在线| 97视频免费在线看| 国产z一区二区三区| 亚洲欧美精品伊人久久| 欧美激情a在线| 在线观看不卡av| 欧美日韩在线免费观看| 欧美国产日韩一区二区三区| 日韩精品高清在线观看| 粉嫩av一区二区三区免费野| 久久国产精品免费视频| 中文字幕欧美在线| 91精品久久久久久久久| 97香蕉超级碰碰久久免费软件| 亚洲视频精品在线| 国产一区二区三区在线播放免费观看| 国产精品久久久久久亚洲影视| 欧美日韩免费一区| 亚洲一区二区三区777| 久久99久久99精品中文字幕| 国内精品模特av私拍在线观看| 欧美综合激情网| 亚洲缚视频在线观看| 668精品在线视频| 最近2019年好看中文字幕视频| 成人黄色av网站| 爱福利视频一区| 亚洲第一页中文字幕| 国产欧美日韩亚洲精品| 久久精品国产亚洲| 亚洲专区国产精品| 欧美高清不卡在线| 精品女同一区二区三区在线播放| 亚洲毛片在线观看| 国产一区二区激情| 日韩性生活视频| 成人观看高清在线观看免费| 日韩性生活视频| 国产一区二区日韩| 懂色av一区二区三区| 久久九九热免费视频| 亚洲第一天堂av| 26uuu国产精品视频| 久久视频免费观看| 国产欧美日韩综合精品| 亚洲一区二区精品| 国产精品扒开腿做爽爽爽视频| 国产精品成人一区| 精品国产电影一区| 欧美日韩一二三四五区| 国产成人avxxxxx在线看| 日韩精品在线第一页| 久久精品电影一区二区| 久久精品在线视频| 视频在线观看一区二区| 91久久久久久久久| 日韩视频免费中文字幕| 国产亚洲精品久久久| 91高清视频在线免费观看| 91tv亚洲精品香蕉国产一区7ujn| 久久777国产线看观看精品| 国产视频精品xxxx| 亚洲欧美日韩在线一区| 91极品视频在线| 欧美日韩国产色| 成人激情视频在线| 久久久999成人| 91香蕉嫩草影院入口| 久久久久久久久久久91| 国产精品18久久久久久首页狼| 中文字幕日韩高清| 久久影院资源站| 国产成人涩涩涩视频在线观看| 国产精品视频1区|