亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用PHP將JSON轉換為XML

發布時間:2020-07-23 17:17:01 來源:億速云 閱讀:261 作者:Leah 欄目:編程語言

如何使用PHP將JSON轉換為XML?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

PHP如何將JSON轉換為XML?

首先使用“file_get_content()”函數將JSON數據讀取出來;

$json = file_get_contents('./data.js');

然后使用函數“json_decode()”將數據進行解碼;

$data = json_decode($json, true);

接著循環數據拼接成XML字符串;最后寫入文件中即可。

$string=""; 
foreach($data as $k=>$v){ 
    $string .="<".$k.">"; 
    //取得標簽數據 
        $string .=$v; 
    $string .="</".$k.">";  
}

封裝示例

<?php
$json = stream_get_contents(STDIN);
$data = @json_decode($json, false);
if (!is_array($data) && !is_object($data)) {
    echo 'ERROR: Invalid JSON given' . PHP_EOL;
    exit(1);
}
class Exporter
{
    private $root = 'document';
    private $indentation = '    ';
    // TODO: private $this->addtypes = false; // type="string|int|float|array|null|bool"
    public function export($data)
    {
        $data = array($this->root => $data);
        echo '<?xml version="1.0" encoding="UTF-8">';
        $this->recurse($data, 0);
        echo PHP_EOL;
    }
    private function recurse($data, $level)
    {
        $indent = str_repeat($this->indentation, $level);
        foreach ($data as $key => $value) {
            echo PHP_EOL . $indent . '<' . $key;
            if ($value === null) {
                echo ' />';
            } else {
                echo '>';
                if (is_array($value)) {
                    if ($value) {
                        $temporary = $this->getArrayName($key);
                        foreach ($value as $entry) {
                            $this->recurse(array($temporary => $entry), $level + 1);
                        }
                        echo PHP_EOL . $indent;
                    }
                } else if (is_object($value)) {
                    if ($value) {
                        $this->recurse($value, $level + 1);
                        echo PHP_EOL . $indent;
                    }
                } else {
                    if (is_bool($value)) {
                        $value = $value ? 'true' : 'false';
                    }
                    echo $this->escape($value);
                }
                echo '</' . $key . '>';
            }
        }
    }
    private function escape($value)
    {
        // TODO:
        return $value;
    }
    private function getArrayName($parentName)
    {
        // TODO: special namding for tag names within arrays
        return $parentName;
    }}$exporter = new Exporter();$exporter->export($data);

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宝坻区| 景谷| 中方县| 高阳县| 东阿县| 公安县| 永州市| 宜丰县| 大邑县| 理塘县| 唐海县| 麻江县| 当涂县| 布尔津县| 仪陇县| 抚宁县| 县级市| 济源市| 霸州市| 东方市| 嫩江县| 偃师市| 大埔县| 塔城市| 台北市| 阿拉善右旗| 浪卡子县| 康保县| 鲜城| 永登县| 麻阳| 名山县| 马龙县| 左贡县| 册亨县| 西峡县| 麻城市| 海林市| 思南县| 定州市| 儋州市|