formatOutput = true; } /** * 转换数组到XML * * @param array $array 要转换的数组 * @param string $rootName 要节点名称 * @param string $version 版本号 * @param string $encoding XML编码 * * @return string */ public static function parse($array, $rootName = 'root', $version = '1.0', $encoding = 'UTF-8') { self::init($version, $encoding); //转换 $node = self::convert($array, $rootName); self::$doc->appendChild($node); return self::$doc->saveXML(); } /** * 递归转换 * * @param array $array 数组 * @param string $nodeName 节点名称 * * @return object (DOMElement) */ private static function convert($array, $nodeName) { if (!is_array($array)) return false; //创建父节点 $node = self::createNode($nodeName); //循环数组 foreach ($array as $key => $value) { $element = self::createNode($key); //如果不是数组,则创建节点的值 if (!is_array($value)) { $element->appendChild(self::createValue($value)); $node->appendChild($element); } else { //如果是数组,则递归 $node->appendChild(self::convert($value, $key, $element)); } } return $node; } private static function createNode($name) { $node = NULL; //如果是字符串,则创建节点 if (!is_numeric($name)) { $node = self::$doc->createElement($name); } else { //如果是数字,则创建默认item节点 $node = self::$doc->createElement('item'); } return $node; } /** * 创建文本节点 * * @param string || bool || integer $value * * @return object (DOMText || DOMCDATASection ); */ private static function createValue($value) { $textNode = NULL; //如果是bool型,则转换为字符串 if (true === $value || false === $value) { $textNode = self::$doc->createTextNode($value ? 'true' : 'false'); } else { //如果含有HTML标签,则创建CDATA节点 if (strpos($value, ' -1) { $textNode = self::$doc->createCDATASection($value); } else { $textNode = self::$doc->createTextNode($value); } } return $textNode; } } $a = Array(); echo ArrayToXml::parse($a, 'root'); ?>
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事
アサシンのクリードシャドウズ:シーシェルリドルソリューション
4週間前ByDDD
Atomfallのクレーンコントロールキーカードを見つける場所
4週間前ByDDD
<🎜>:Dead Rails-すべての課題を完了する方法
1 か月前ByDDD
Atomfall Guide:アイテムの場所、クエストガイド、およびヒント
1 か月前ByDDD

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 中国語版
中国語版、とても使いやすい

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ホットトピック
Gmailメールのログイン入り口はどこですか?
7700
15


Java チュートリアル
1640
14


CakePHP チュートリアル
1393
52


Laravel チュートリアル
1287
25


PHP チュートリアル
1230
29

