PHP 利用JsonSerializable接口如何實(shí)現(xiàn)自定義json編碼,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

專(zhuān)注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)桑日免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
JsonSerializable接口
原型:
JsonSerializable {
/* 方法 */
abstract public mixed jsonSerialize ( void )
}
ps: 簡(jiǎn)單說(shuō)一下這個(gè)東西。很簡(jiǎn)單,目的主要是在json序列化對(duì)象的時(shí)候彌補(bǔ)一下json編碼的弱點(diǎn)。
我們都知道在類(lèi)的序列化時(shí)候 通常 利用Serialize函數(shù),因?yàn)樗軌虮4娓嗟男畔ⅲ?dāng)然是你需要他保存很多信息的前提下。但是json編碼在這方面欠缺很多。他只能保存類(lèi)的公共屬性。那么 這個(gè)時(shí)候我們就需要一個(gè)東西來(lái)彌補(bǔ)一下欠缺。
如何來(lái)做。請(qǐng)看實(shí)例:
<?php
class test implements JsonSerializable
{
private $b;
public function __construct($b)
{
$this->b=$b;
}
public function jsonSerialize()
{
return 'b:'.$this->b;
}
}
$test=new test(1);
echo json_encode($test).PHP_EOL;看看結(jié)果:
localhost:test yehua$ php serialize.php "b:1"
總結(jié)一下
目前很多前段,app、html5、小程序客戶(hù)端需要的json字符串,可能大大小小存在不同點(diǎn),如果采用統(tǒng)一的json編碼格式傳遞數(shù)據(jù)。會(huì)顯得很呆板,通過(guò)該函數(shù)來(lái)自定義內(nèi)容,適當(dāng)增加了一部分的靈活性
關(guān)于PHP 利用JsonSerializable接口如何實(shí)現(xiàn)自定義json編碼問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
名稱(chēng)欄目:PHP利用JsonSerializable接口如何實(shí)現(xiàn)自定義json編碼
文章路徑:http://chinadenli.net/article8/gdjpop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、虛擬主機(jī)、定制開(kāi)發(fā)、小程序開(kāi)發(fā)、定制網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)