首先,我是一个完全的php新手。我正在为一个动物收容所的网站工作(我是一名兽医/编码员),我们正在从一个可供收养的动物的在线数据库中获取数据。该xml文件的输出如下所示(这只是xml文件的一小部分):
<TotalWeight>64.5 lbs </TotalWeight>
<UnitWeight>lbs</UnitWeight>
<AdditionalPhotoUrls>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55806.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55807.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55809.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55810.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55876.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55877.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_71558.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_71559.jpg</string>
</AdditionalPhotoUrls>
<AdoptionAmount>0.0000</AdoptionAmount>
php文件有以下代码转换成json:
$item['totalweight'] = (string)$animal->TotalWeight;
$item['weight'] = (string)$animal->UnitWeight;
$item['photosX'] = (string)$animal->AdditionalPhotoUrls;
将json输出到一个文件,使用
echo file_put_contents('page.json', json_encode($data));
对于TotalWeight和UnitWeight是成功的,但是对于AdditionalPhotoUrls和它的字符串是不成功的。最后的输出是这样的(同样,只是其中的一小部分):
{
"weight": "lbs",
"totalweight": "65",
"photosX": "n n n n n n n n n "
},
我不清楚我应该如何格式化:(string)$animal->AdditionalPhotoUrls;
不获取字符串,而以n
得到所有的多个<string>
。当前photosX
的json文件为空。
任何帮助或指导将不胜感激。
这个XML不包含任何属性,所以我们可以很容易地输入:
<?php
$xml = '<root>
<TotalWeight>64.5 lbs </TotalWeight>
<UnitWeight>lbs</UnitWeight>
<AdditionalPhotoUrls>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55806.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55807.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55809.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55810.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55876.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_55877.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_71558.jpg</string>
<string>https://eastbayspcapets.shelterbuddy.com//photos/lostfound/doc_71559.jpg</string>
</AdditionalPhotoUrls>
<AdoptionAmount>0.0000</AdoptionAmount>
</root>';
$json = json_encode(simplexml_load_string($xml));
echo $json;