可能重复:
Implementing condition in XPath and XQuery
PHP convert XML to JSONPHP,XML获取记录节点和值并将它们放入JSON数组中?
我如何获得所有子笔记,其中包括产品=产品1 并把它们放到一个JSON数组的记录?
<RECORD>
<PROP NAME="Product">
<PVAL><!CDATA[Produkt1]]</PVAL>
<PROP NAME="Value">
<PVAL><!CDATA[10]]</PVAL>
<PROP NAME="Status">
<PVAL><!CDATA[Active]]</PVAL>
</RECORD>
<RECORD>
<PROP NAME="Product">
<PVAL><!CDATA[Produkt2]]</PVAL>
<PROP NAME="Value">
<PVAL><!CDATA[20]]</PVAL>
<PROP NAME="Status">
<PVAL><!CDATA[Active]]</PVAL>
</RECORD>
<RECORD>
<PROP NAME="Product">
<PVAL><!CDATA[Produkt3]]</PVAL>
<PROP NAME="Value">
<PVAL><!CDATA[30]]</PVAL>
<PROP NAME="Status">
<PVAL><!CDATA[Active]]</PVAL>
</RECORD>
我需要一个iPad应用程序中的数据,称像www.products.com/product.php?Product1
具有JSON看起来像
{
"Product": [
{ "Name":"Product1" , "Value":"10" , "Status":"Active" }
]
}
编辑:解决方案使用XML阅读器
<?php
$z = new XMLReader;
$z->open('products.xml');
$doc = new DOMDocument;
// move to the first <product /> node
while ($z->read() && $z->name !== 'RECORD');
// now that we're at the right depth, hop to the next <product/> until the end of the tree
while ($z->name === 'RECORD')
{
$node = simplexml_import_dom($doc->importNode($z->expand(), true));
$strvalue = $node->PROP[6]->PVAL;
echo $strvalue."<p>" ;
// go to next <product />
$z->next('RECORD');
}
?>
有没有像'JSON array'。你的意思是json格式化的字符串? – Leri
对我而言有一种叫做JSON数组的东西,但是是真的 - 它是由JSON字符串/对象组成的 http://www.w3schools.com/json/json_syntax.asp –
这是无效的XML –