已知一号店的API php如何发送http请求并获取返回的XML 求指点 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 都有API了,就按照接口规范就ok了啊方法一般都有: file_get_contents,curl,fsockopen具体选用哪一种,要看你的API和具体使用环境了你的问题描述几乎为0,可不是好的提问方式哟 <script>//Ajaxvar xmlHttp; function createXMLHttpRequest() { if(window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } else if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } } createXMLHttpRequest(); //API接口 url = "xxx.php?param="+param+"&ran="+Math.random(); method = "GET"; xmlHttp.open(method,url,true); xmlHttp.onreadystatechange = show; xmlHttp.send(null); } function show(){ if (xmlHttp.readyState == 4){ if (xmlHttp.status == 200){ var text = xmlHttp.responseText; alert("xml-->>"+text); //document.getElementById("s2").innerHTML = text; }else { alert("response error code:"+xmlHttp.status); } } }</script> 嗯 他们API返回的值是 xml的 file_get_contents 这个函数读取的是内容 curl 取得返回的xml之后使用SimpleXML解析内容 xml也是文本你获取到内容后,把返回的文本当做 xml 来进行解析,使用 php 的xml解析函数,甚至再土一点,直接使用字符串解析,都可以如果支持json格式交换,就会更方便些了,json_decode一步搞定 这是我测试的一个 请求,那边返回的是<?xml version="1.0" encoding="UTF-8" standalone="yes" ?><response> <totalCount> 2 </totalCount> <errorCount> 0 </errorCount> <orderList> <order> <orderAmount> 130.0 </orderAmount> <orderCode> 11111009FTHT </orderCode> <orderCreateTime> 2011-11-11 20:44:32 </orderCreateTime> <orderDeliveryFee> 0.0 </orderDeliveryFee> <orderId> 21919876 </orderId> <orderNeedInvoice> 0 </orderNeedInvoice> <orderStatus> ORDER_OUT_OF_WH </orderStatus> <productAmount> 130.0 </productAmount> </order> <order> <orderAmount> 65.0 </orderAmount> <orderCode> 11111012FTAP </orderCode> <orderCreateTime> 2011-11-11 20:41:31 </orderCreateTime> <orderDeliveryFee> 0.0 </orderDeliveryFee> <orderId> 21919620 </orderId> <orderNeedInvoice> 0 </orderNeedInvoice> <orderStatus> ORDER_OUT_OF_WH </orderStatus> <productAmount> 65.0 </productAmount> </order> </orderList></response>我的请求代码<?phpheader("Content-Type:text/html; charset=utf-8");function send_yhd($userName){ $url="http:xxx.aspx?userName="; $base=''; $base.=urlencode($userName); $response = file_get_contents($url.$base); return $response; }echo send_yhd('222');?> 参考:http://topic.csdn.net/u/20120521/03/527bc4d2-b4e0-4d6e-9ae4-021a675cfff5.htmlhttp://topic.csdn.net/u/20120518/09/0a6a3d53-f326-4547-bed9-2ceecc585651.html 既然都得到内容了,剩下的过程还是自己研究学习下吧php解析xml的方法网上一抓一大把相信自己,没问题的 我是想 得到XML 这个只有内容,看看怎么把标签也读出来 我是想 得到XML 这个只有内容,看看怎么把标签也读出来 就是<order></order>这些也要读出来 我现在的代码 返回的 全部是 内容 数字 用simplexml解析成数组,数组的键就是你要的标签 擦,我发的贴子没效果吗?XML与PHP相互转换封装函数:xmlparse.php $txtxml = <<<XML<info> <title>我爱你的理由 (2012)</title> <cate>剧集</cate> <genre>类型: 日剧</genre> <region>地区: 日本</region> <director>导演: 寒竹ゆり</director> <actor>演员: 泽尻英龙华 / 村上淳 / 中村苍 / 冈田义德 / 更多»</actor> <alias_name>L et M~わたしがあなたを</alias_name> <poster>http://i-7.vcimg.com/f48c819a3ba24b4a20886277877373ac78438(120x170)/thumb.jpg</poster> <desc_info></desc_info> <episode_count>12</episode_count> <publish_date>BeeTV</publish_date> <customlik> <youku>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,</youku> <tudou>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/,</tudou> <else>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/,</else> </customlik> </info>XML;$obj=simplexml_load_string($txtxml);print_r($obj);$tmparr = parse_xml_config($txtxml,"info");//print_r($tmparr);#result:#Array ( [title] => 我爱你的理由 (2012) [cate] => 剧集 [genre] => 类型: 日剧 [region] => 地区: 日本 [director] => 导演: 寒竹ゆり [actor] => 演员: 泽尻英龙华 / 村上淳 / 中村苍 / 冈田义德 / 更多» [alias_name] => L et M~わたしがあなたを [poster] => http://i-7.vcimg.com/f48c819a3ba24b4a20886277877373ac78438(120x170)/thumb.jpg [desc_info] => [episode_count] => 12 [publish_date] => BeeTV [customlik] => Array ( [youku] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html, [tudou] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/, [else] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/, ) [encoding] => UTF-8 ) domdocument和simplexml都是官方库,写个函数递归遍历一下就可以了。 php 截取字符串 获取页面上的一些信息,求指点 这么简单的问题,搞不定脑火 php读取xml php当中如何实现增量查询呢? 求一个php 日历排班的例子 一个数组的问题 如何才能打印自己想要的web页面区域 购物车问题,急? 有谁知道vbulletin2。1的确切下载地址啊!急急急!!!(一定给分) 提问Php学习流程的问题 php显示经验值问题
你的问题描述几乎为0,可不是好的提问方式哟
<script>
//Ajax
var xmlHttp; function createXMLHttpRequest() {
if(window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
} else if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
} createXMLHttpRequest();
//API接口
url = "xxx.php?param="+param+"&ran="+Math.random();
method = "GET";
xmlHttp.open(method,url,true);
xmlHttp.onreadystatechange = show;
xmlHttp.send(null);
} function show(){
if (xmlHttp.readyState == 4){
if (xmlHttp.status == 200){
var text = xmlHttp.responseText;
alert("xml-->>"+text);
//document.getElementById("s2").innerHTML = text;
}else {
alert("response error code:"+xmlHttp.status);
}
}
}
</script>
嗯 他们API返回的值是 xml的 file_get_contents 这个函数读取的是内容
这是我测试的一个 请求,那边返回的是
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<response>
<totalCount>
2
</totalCount>
<errorCount>
0
</errorCount>
<orderList>
<order>
<orderAmount>
130.0
</orderAmount>
<orderCode>
11111009FTHT
</orderCode>
<orderCreateTime>
2011-11-11 20:44:32
</orderCreateTime>
<orderDeliveryFee>
0.0
</orderDeliveryFee>
<orderId>
21919876
</orderId>
<orderNeedInvoice>
0
</orderNeedInvoice>
<orderStatus>
ORDER_OUT_OF_WH
</orderStatus>
<productAmount>
130.0
</productAmount>
</order>
<order>
<orderAmount>
65.0
</orderAmount>
<orderCode>
11111012FTAP
</orderCode>
<orderCreateTime>
2011-11-11 20:41:31
</orderCreateTime>
<orderDeliveryFee>
0.0
</orderDeliveryFee>
<orderId>
21919620
</orderId>
<orderNeedInvoice>
0
</orderNeedInvoice>
<orderStatus>
ORDER_OUT_OF_WH
</orderStatus>
<productAmount>
65.0
</productAmount>
</order>
</orderList>
</response>我的请求代码
<?php
header("Content-Type:text/html; charset=utf-8");
function send_yhd($userName)
{
$url="http:xxx.aspx?userName=";
$base='';
$base.=urlencode($userName);
$response = file_get_contents($url.$base);
return $response;
}
echo send_yhd('222');
?>
http://topic.csdn.net/u/20120521/03/527bc4d2-b4e0-4d6e-9ae4-021a675cfff5.html
http://topic.csdn.net/u/20120518/09/0a6a3d53-f326-4547-bed9-2ceecc585651.html
php解析xml的方法网上一抓一大把相信自己,没问题的
就是<order></order>这些也要读出来 我现在的代码 返回的 全部是 内容 数字
XML与PHP相互转换封装函数:xmlparse.php $txtxml = <<<XML
<info>
<title>我爱你的理由 (2012)</title>
<cate>剧集</cate>
<genre>类型: 日剧</genre>
<region>地区: 日本</region>
<director>导演: 寒竹ゆり</director>
<actor>演员: 泽尻英龙华 / 村上淳 / 中村苍 / 冈田义德 / 更多»</actor>
<alias_name>L et M~わたしがあなたを</alias_name>
<poster>http://i-7.vcimg.com/f48c819a3ba24b4a20886277877373ac78438(120x170)/thumb.jpg</poster>
<desc_info></desc_info>
<episode_count>12</episode_count>
<publish_date>BeeTV</publish_date>
<customlik>
<youku>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,</youku>
<tudou>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/,</tudou>
<else>http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/,</else>
</customlik>
</info>
XML;
$obj=simplexml_load_string($txtxml);
print_r($obj);
$tmparr = parse_xml_config($txtxml,"info");
//print_r($tmparr);
#result:
#Array ( [title] => 我爱你的理由 (2012) [cate] => 剧集 [genre] => 类型: 日剧 [region] => 地区: 日本 [director] => 导演: 寒竹ゆり [actor] => 演员: 泽尻英龙华 / 村上淳 / 中村苍 / 冈田义德 / 更多» [alias_name] => L et M~わたしがあなたを [poster] => http://i-7.vcimg.com/f48c819a3ba24b4a20886277877373ac78438(120x170)/thumb.jpg [desc_info] => [episode_count] => 12 [publish_date] => BeeTV [customlik] => Array ( [youku] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html, [tudou] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/, [else] => http://www.youku.com/v_show/id_XMzQ4MDQ3MDMy.html,http://www.youku.com/v_show/id_XMzQ4MDUzMzMy.html,http://www.tudou.com/programs/view/TX_Awg3ephU/, ) [encoding] => UTF-8 )