当前位置:首页 » 编程语言 » xml数组php

xml数组php

发布时间: 2022-04-20 11:10:38

A. php 数组索引键值对 怎么转xml

php数组转换xml有好几种方法,这里演示最简单的一种:拼接xml格式数据。如果是多维数组需要另行处理,但套路基本一致。示例如下:

//测试
$arr=array(
"name"=>"网络",
"url"=>""
);
echoarrayToXml($arr);
/*转换结果
*<?xmlversion="1.0"encoding="utf-8"?>
*<name>网络</name>
*<url></url>
*</xml>
*/
//array转换成xml格式函数
functionarrayToXml($arr){
$xml="<?xmlversion="1.0"encoding="utf-8"?>";
foreach($arras$key=>$val){
$xml.="<".$key.">".$val."</".$key.">";
}
$xml.="</xml>";
return$xml;
}

B. 如何用php读取xml内容并并放入数组

用不到正则。要某一个<results>只要指定索引值即可。

C. 淘宝API返回xml如何解析成PHP数组

  1. DOMDocument模式。将xml文档看成一个DOM模型通过对节点的操作来完成对xml文档的CURD;
    步骤;1.首先是创建一个DOMDocument文档对象,并读取指定的xml文件
    $xmldoc=new DOMDocument();
    $xmldoc->load("text.xml");
    2.获取xml的节点 与相关操作
    $roots=$xmldoc->getElementsByTagName("school")//获取根节点shcool,获取的根节点xmlnodelist列表形式,可指定获取的指定的节点
    $root=$roots->item(0);//获取节点列表中的第一个节点
    $root->nodeValue;//获取标签的文本内容;
    下面我我们以获取所有的girl标签的文本来为例;

  2. <?php
    $xmldoc=newDOMDocument();
    $xmldoc->load("text.xml");
    $classes=$xmldoc->getElementsByTagName("class");//获取班级class节点
    //echo$classes->length;
    for($i=0;$i<$classes->length;$i++){
    $class=$classes->item($i);
    if($class->nodeValue){
    $stus=$class->getElementsByTagName("stu")->item(0);//获取每一个班级下的stu标签节点
    $girl=$stus->getElementsByTagName("girl")->item(0)->nodeValue;//获取每一个节点girl的文本
    echo$girl."<br/>";

    }

    }

    ?>

<school>		<class班号="b001">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class班号="b002">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class班号="b003">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class/>
</school>

3.对于xml文件的添加删除和更新域javascript中的DOM操作一样,只要创建相关的节点即可,并将相关的节点挂载到DOM树上;


自己总结的,看下你就明白了

D. php 如何获取XML 并转成2维数组

<?php
/**
* 功能:解析xml数据转换成二维数组
*
* @param string $dataXml
* @return array
*/
public static function getXmlData ( $strXml ) {
$pos = strpos($strXml, 'xml');
if ($pos) {
$xmlCode =simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
$arrayCode=self::get_object_vars_final($xmlCode);
return $arrayCode ;
} else {
return '';
}
}
?>

E. PHP 里如何实现数组转 xml 并且格式化

simplexml_load_string可以把xml解析成对象,然后可以用var_mp进行解析。\r\nphp内部库并没有包含直接把xml解析成数组的模块。\r\n而且xml本来包含节点概念,解析成对象以后可以直接访问每一个节点,而数组相对就要难以理解的多。\r\n因此解析成数组并不比解析成对象有多少优势。\r\n如果你对数组实在有需求的话,可以自己写一个库,并不会太难。

F. 怎么用PHP读取XML中的数据

<?php
$xml_array=simplexml_load_file('test.xml'); //将XML中的数据,读取到数组对象中
foreach($xml_array as $tmp){
echo $tmp->b."-".$tmp->c."<br>";
}
?>

G. 多维PHP数组怎么转换成xml格式的数据

public function arrayToXml($arr){
$xml = "<xml>";
foreach ($arr as $key=>$val){
if(is_array($val)){
$xml.="<".$key.">".arrayToXml($val)."</".$key.">";
}else{
if (is_numeric($val)){
$xml.="<".$key.">".$val."</".$key.">";
}else{
$xml.="<".$key."><![CDATA[".$val."]]></".$key.">";
}
}
}
$xml.="</xml>";
return $xml;
}

H. PHP怎么把提取到的XML数据转换成三维数组

functionxmlToArray($xml)
{
//将XML转为array
$array_data=json_decode(json_encode(simplexml_load_string($xml,'SimpleXMLElement',LIBXML_NOCDATA)),true);
return$array_data;
}

I. php读取XML文件,并解析成数组

simplexml_load_string可以把xml解析成对象,然后可以用var_mp进行解析。
php内部库并没有包含直接把xml解析成数组的模块。
而且xml本来包含节点概念,解析成对象以后可以直接访问每一个节点,而数组相对就要难以理解的多。
因此解析成数组并不比解析成对象有多少优势。
如果你对数组实在有需求的话,可以自己写一个库,并不会太难。

J. php 怎么将数组转xml的函数

没有现成函数,只能自己写;我有一个别人写的函数:
<?php
class A2Xml {
private $version = '1.0';
private $encoding = 'UTF-8';
private $root = 'root';
private $xml = null;
function __construct() {
$this->xml = new XmlWriter();
}
function toXml($data, $eIsArray=FALSE) {
if(!$eIsArray) {
$this->xml->openMemory();
$this->xml->startDocument($this->version, $this->encoding);
$this->xml->startElement($this->root);
}
foreach($data as $key => $value){

if(is_array($value)){
$this->xml->startElement($key);
$this->toXml($value, TRUE);
$this->xml->endElement();
continue;
}
$this->xml->writeElement($key, $value);
}
if(!$eIsArray) {
$this->xml->endElement();
return $this->xml->outputMemory(true);
}
}
}
$res = array(
'hello' => '11212',
'world' => '232323',
'array' => array(
'test' => 'test',
'b' => array('c'=>'c', 'd'=>'d')
),
'a' => 'haha'
);
$xml = new A2Xml();
echo $xml->toXml($res);

热点内容
如何用安卓编译项目 发布:2025-01-24 08:30:46 浏览:863
计算机同时输出和存储设备的区别 发布:2025-01-24 08:29:21 浏览:581
食物语上传 发布:2025-01-24 07:58:44 浏览:754
编程相关书籍 发布:2025-01-24 07:55:45 浏览:430
英雄联盟手游需要哪些配置 发布:2025-01-24 07:42:03 浏览:985
regex可以静态编译吗 发布:2025-01-24 07:40:32 浏览:79
怎么编译rec 发布:2025-01-24 07:39:04 浏览:56
卡片没加密 发布:2025-01-24 07:33:56 浏览:381
linux备份mysql 发布:2025-01-24 07:26:54 浏览:391
苹果手机忘记id密码怎么刷机 发布:2025-01-24 07:26:47 浏览:695