【发布时间】:2015-06-05 16:25:27
【问题描述】:
我有问题。我在 USPS 网站上注册,然后从那里获取用户并通过访问他们的 API。但是当我尝试访问跟踪时,我得到一个包含所有结果的单个文本字符串,而没有格式化 XML
我使用的脚本是这样的:
$trackingNumber = $numtrack;
$url = "http://production.shippingapis.com/shippingAPI.dll";
$service = "TrackV2";
$xml = rawurlencode("<TrackRequest USERID='MYIDACCOUNT'><TrackID ID='".$trackingNumber."'></TrackID></TrackRequest>");
$request = $url . "?API=" . $service . "&XML=" . $xml;
// send the POST values to USPS
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$request);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPGET, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// parameters to post
$result = curl_exec($ch);
curl_close($ch);
$response = new SimpleXMLElement($result);
print_r($result);
$deliveryStatus = $response->TrackResponse->TrackSummary->Status;
echo $deliveryStatus;
我得到的结果是
您的物品已于 2015 年 6 月 5 日上午 10:51 在意大利交付。海关 清关处理完成,2015 年 6 月 4 日下午 5:29,意大利海关 清关,2015 年 6 月 4 日,上午 11:20,意大利通过排序处理 设施,2015 年 6 月 4 日,上午 11:19,意大利出发,2015 年 6 月 3 日,7:43 上午,意大利米兰,2015 年 6 月 2 日下午 3:34 出发,美国迈阿密 状态已于 2015 年 6 月 2 日上午 10:05 到达,美国迈阿密已处理 通过排序设施,2015 年 6 月 1 日,晚上 8:07,ISC MIAMI FL (USPS)2015 年 6 月 1 日晚上 8:07 抵达分拣设施,ISC MIAMI FL (USPS)离开的 USPS 设施,2015 年 6 月 1 日,凌晨 2:40,佛罗里达州迈阿密 331122015 年 5 月 31 日上午 11:22 抵达 USPS Origin Facility,迈阿密, FL 33112 离开邮局,2015 年 5 月 30 日,下午 4:07,佛罗里达州博卡拉顿 33431验收,2015 年 5 月 30 日,下午 12:27,佛罗里达州博卡拉顿 33431 2015 年 5 月 29 日发送至 USPS 的装运前信息
如何获取 XML,然后推断我需要的个人信息?我跳不出来。
【问题讨论】: