亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
一、使用 json_encode 輸出
二、使用 jsonFormat 輸出
三、php5.4 以后,json_encode增加了JSON_UNESCAPED_UNICODE , JSON_PRETTY_PRINT 等幾個常量參數(shù)。使顯示中文與格式化更方便。
首頁 后端開發(fā) php教程 php JSON數(shù)據(jù)格式化(美化)的方法

php JSON數(shù)據(jù)格式化(美化)的方法

Oct 16, 2019 am 10:52 AM
json 美化

php JSON數(shù)據(jù)格式化(美化)的方法

一、使用 json_encode 輸出

<?php
header(&#39;content-type:application/json;charset=utf8&#39;);
$arr = array(
    &#39;status&#39; => true,
    &#39;errMsg&#39; => &#39;&#39;,
    &#39;member&#39; =>array(
        array(
            &#39;name&#39; => &#39;李&#39;,
            &#39;gender&#39; => &#39;男&#39;
        ),
        array(
            &#39;name&#39; => &#39;趙&#39;,
            &#39;gender&#39; => &#39;女&#39;
        )
    )
);
  
echo json_encode($arr);
?>

(推薦學(xué)習(xí):PHP視頻教程

輸出:

{"status":true,"errMsg":"","member":[{"name":"\u674e","gender":"\u7537"},{"name":"\u8d75","gender":"\u5973"}]}

二、使用 jsonFormat 輸出

<?php
  
/** Json數(shù)據(jù)格式化
* @param  Mixed  $data   數(shù)據(jù)
* @param  String $indent 縮進(jìn)字符,默認(rèn)4個空格
* @return JSON
*/
function jsonFormat($data, $indent=null){
  
    // 對數(shù)組中每個元素遞歸進(jìn)行urlencode操作,保護(hù)中文字符
    array_walk_recursive($data, &#39;jsonFormatProtect&#39;);
  
    // json encode
    $data = json_encode($data);
  
    // 將urlencode的內(nèi)容進(jìn)行urldecode
    $data = urldecode($data);
  
    // 縮進(jìn)處理
    $ret = &#39;&#39;;
    $pos = 0;
    $length = strlen($data);
    $indent = isset($indent)? $indent : &#39;    &#39;;
    $newline = "\n";
    $prevchar = &#39;&#39;;
    $outofquotes = true;
  
    for($i=0; $i<=$length; $i++){
  
        $char = substr($data, $i, 1);
  
        if($char==&#39;"&#39; && $prevchar!=&#39;\\&#39;){
            $outofquotes = !$outofquotes;
        }elseif(($char==&#39;}&#39; || $char==&#39;]&#39;) && $outofquotes){
            $ret .= $newline;
            $pos --;
            for($j=0; $j<$pos; $j++){
                $ret .= $indent;
            }
        }
  
        $ret .= $char;
         
        if(($char==&#39;,&#39; || $char==&#39;{&#39; || $char==&#39;[&#39;) && $outofquotes){
            $ret .= $newline;
            if($char==&#39;{&#39; || $char==&#39;[&#39;){
                $pos ++;
            }
  
            for($j=0; $j<$pos; $j++){
                $ret .= $indent;
            }
        }
  
        $prevchar = $char;
    }
  
    return $ret;
}
  
/** 將數(shù)組元素進(jìn)行urlencode
* @param String $val
*/
function jsonFormatProtect(&$val){
    if($val!==true && $val!==false && $val!==null){
        $val = urlencode($val);
    }
}
  
header(&#39;content-type:application/json;charset=utf8&#39;);
  
$arr = array(
    &#39;status&#39; => true,
    &#39;errMsg&#39; => &#39;&#39;,
    &#39;member&#39; =>array(
        array(
            &#39;name&#39; => &#39;李&#39;,
            &#39;gender&#39; => &#39;男&#39;
        ),
        array(
            &#39;name&#39; => &#39;趙&#39;,
            &#39;gender&#39; => &#39;女&#39;
        )
    )
);
  
echo jsonFormat($arr);
  
?>

輸出:

{
    "status":true,
    "errMsg":"",
    "member":[
        {
            "name":"李",
            "gender":"男"
        },
        {
            "name":"趙",
            "gender":"女"
        }
    ]
}

三、php5.4 以后,json_encode增加了JSON_UNESCAPED_UNICODE , JSON_PRETTY_PRINT 等幾個常量參數(shù)。使顯示中文與格式化更方便。

<?php
header(&#39;content-type:application/json;charset=utf8&#39;);   
$arr = array(  
    &#39;status&#39; => true,  
    &#39;errMsg&#39; => &#39;&#39;,  
    &#39;member&#39; =>array(  
        array(  
            &#39;name&#39; => &#39;李&#39;,  
            &#39;gender&#39; => &#39;男&#39;  
        ),  
        array(  
            &#39;name&#39; => &#39;趙&#39;,  
            &#39;gender&#39; => &#39;女&#39;  
        )  
    )  
);
echo json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);

輸出:

{
    "status": true,
    "errMsg": "",
    "member": [
        {
            "name": "李",
            "gender": "男"
        },
        {
            "name": "趙",
            "gender": "女"
        }
    ]
}

以上是php JSON數(shù)據(jù)格式化(美化)的方法的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72
PHP 數(shù)組轉(zhuǎn) JSON 的性能優(yōu)化技巧 PHP 數(shù)組轉(zhuǎn) JSON 的性能優(yōu)化技巧 May 04, 2024 pm 06:15 PM

PHP數(shù)組轉(zhuǎn)JSON的性能優(yōu)化方法包括:使用JSON擴(kuò)展和json_encode()函數(shù);添加JSON_UNESCAPED_UNICODE選項(xiàng)以避免字符轉(zhuǎn)義;使用緩沖區(qū)提高循環(huán)編碼性能;緩存JSON編碼結(jié)果;考慮使用第三方JSON編碼庫。

如何在 Golang 中將 JSON 數(shù)據(jù)保存到數(shù)據(jù)庫中? 如何在 Golang 中將 JSON 數(shù)據(jù)保存到數(shù)據(jù)庫中? Jun 06, 2024 am 11:24 AM

可以通過使用gjson庫或json.Unmarshal函數(shù)將JSON數(shù)據(jù)保存到MySQL數(shù)據(jù)庫中。gjson庫提供了方便的方法來解析JSON字段,而json.Unmarshal函數(shù)需要一個目標(biāo)類型指針來解組JSON數(shù)據(jù)。這兩種方法都需要準(zhǔn)備SQL語句和執(zhí)行插入操作來將數(shù)據(jù)持久化到數(shù)據(jù)庫中。

Jackson庫中注解如何控制JSON序列化和反序列化? Jackson庫中注解如何控制JSON序列化和反序列化? May 06, 2024 pm 10:09 PM

Jackson庫中的注解可控制JSON序列化和反序列化:序列化:@JsonIgnore:忽略屬性@JsonProperty:指定名稱@JsonGetter:使用獲取方法@JsonSetter:使用設(shè)置方法反序列化:@JsonIgnoreProperties:忽略屬性@JsonProperty:指定名稱@JsonCreator:使用構(gòu)造函數(shù)@JsonDeserialize:自定義邏輯

word美化怎么做 word美化怎么做 Mar 19, 2024 pm 08:31 PM

我們在進(jìn)行word文檔編輯處理的時候,總是希望能夠使得文檔更加漂亮、美觀,但是,一說到word美化,很多人想到的就是將字體、顏色做得個性一點(diǎn),將邊距和行距進(jìn)行調(diào)整等等,其實(shí)我們可以通過更多的操作,是word更加美觀,比如我們可以通過插入圖片,修飾邊框等讓word文檔更好看。下面我們就試試?yán)眠吙蚧y讓word文檔更美觀,一起來學(xué)一學(xué)吧!首先,打開一個新的Word文檔,然后在【開始】選項(xiàng)卡下找到【段落】工具。接著,點(diǎn)擊【邊框】選項(xiàng),如圖示的紅色箭頭所指示的那樣。2、我們點(diǎn)擊之后系統(tǒng)會自動彈出下拉選

如何使用 PHP 函數(shù)處理 JSON 數(shù)據(jù)? 如何使用 PHP 函數(shù)處理 JSON 數(shù)據(jù)? May 04, 2024 pm 03:21 PM

PHP提供了以下函數(shù)來處理JSON數(shù)據(jù):解析JSON數(shù)據(jù):使用json_decode()將JSON字符串轉(zhuǎn)換為PHP數(shù)組。創(chuàng)建JSON數(shù)據(jù):使用json_encode()將PHP數(shù)組或?qū)ο筠D(zhuǎn)換為JSON字符串。獲取JSON數(shù)據(jù)的特定值:使用PHP數(shù)組函數(shù)訪問特定值,例如鍵值對或數(shù)組元素。

PHP 數(shù)組轉(zhuǎn) JSON 的快捷技巧 PHP 數(shù)組轉(zhuǎn) JSON 的快捷技巧 May 03, 2024 pm 06:33 PM

PHP數(shù)組可通過json_encode()函數(shù)轉(zhuǎn)換為JSON字符串(例如:$json=json_encode($array);),反之亦可用json_decode()函數(shù)從JSON轉(zhuǎn)換為數(shù)組($array=json_decode($json);)。其他技巧還包括:避免深度轉(zhuǎn)換、指定自定義選項(xiàng)以及使用第三方庫。

征服 Java JSON 處理的巔峰:解析和創(chuàng)建復(fù)雜數(shù)據(jù) 征服 Java JSON 處理的巔峰:解析和創(chuàng)建復(fù)雜數(shù)據(jù) Mar 09, 2024 am 09:13 AM

解析JSON數(shù)據(jù)解析JSON數(shù)據(jù)是處理復(fù)雜數(shù)據(jù)的關(guān)鍵一步。在Java中,我們可以使用以下方法:使用Gson庫:Gson是一個廣泛使用的jsON解析庫,提供了一個簡潔且高效的api,如下所示:Gsongson=newGson();JsonObjectjsonObject=gson.fromJson(jsonString,JsonObject.class);使用Jackson庫:Jackson是另一個流行的JSON處理庫,支持豐富的功能和對其他格式(如XML)的轉(zhuǎn)換,如下所示:ObjectMappe

是否有基于JSON的RSS替代方案? 是否有基于JSON的RSS替代方案? Apr 10, 2025 am 09:31 AM

JSONFeed是一種基于JSON的RSS替代方案,其優(yōu)勢在于簡潔性和易用性。1)JSONFeed使用JSON格式,易于生成和解析。2)它支持動態(tài)生成,適用于現(xiàn)代Web開發(fā)。3)使用JSONFeed可以提升內(nèi)容管理效率和用戶體驗(yàn)。

See all articles