怎么用PHPphp 发送post请求HTTP请求

怎么用PHP发送HTTP请求_百度知道
怎么用PHP发送HTTP请求
提问者采纳
可以使用&curl_&系列函数,使用cur订弗斥煌俪号筹铜船扩l请求一个链接,就相当于发送了HTTP请求。具体可以参考:《PHP&cURL&应用》
PHP&正则顾问
其他类似问题
为您推荐:
php的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁php 如何发送http请求!_百度知道
php 如何发送http请求!
不需要获取返回值:/num.mp3比如我就打开这个网页;&#47?&url=123456;网址&#47.phphttp,就是发送请求就可以
发完请求就不管了。是要用 fsockopen 吗能不能给我代码
提问者采纳
$B=trim(urlencode($_REQUEST['r&#92.= &quot,10) or exit($&#92.&quot.&:localhost\---&A'.$errno).$lenght,80;x-www-form-urlencoded\;POST /Cr\Content-LContent-Ttest/r\n&quot.= &quot.php HTTP/R])).1&#92: Close\;r\;n&.= &quot: &
$params = &;
$r\n&r\n&1;r&#92.= &quot:localhost&#47,$re.php\&
$n&.= &A=$A&B=$B&&#92: application/;
$])).= $params.&n&
fputs($r\
$fp = fsockopen(&quot(只能在PHP文件里发送HTTP请求)$A=trim(urlencode($_REQUEST['n&;localhost&
$Host,$errstr,$header);test/
$header = &
fclose($fp);n\
$length = strlen($params)
提问者评价
来自团队:
其他类似问题
为您推荐:
php的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁flandycheng 的BLOG
用户名:flandycheng
文章数:182
评论数:37
访问量:466077
注册日期:
阅读量:24883
阅读量:263659
阅读量:1000343
阅读量:150012
[匿名]51cto游客:
[匿名]51cto游客:
[匿名]51cto游客:
[匿名]vvvvvvvv:
51CTO推荐博文
方法一:利用php的socket编程来直接给接口发送数据来模拟post的操作。建立两个文件post.php,getpost.phppost.php内容如下:&?php&$flag = 0;&$params = '';&$errno = '';&$errstr = '';&//要post的数据$argv = array(&&& 'var1'=&'abc',&&& 'var2'=&'how are you , my friend??');//构造要post的字符串foreach ($argv as $key=&$value) {&&& if ($flag!=0) {&&&&&&& $params .= "&";&&&&&&& $flag = 1;&&& }&&& $params.= $key."="; $params.= urlencode($value);&&& $flag = 1;&&& }&&& $length = strlen($params);&&&& //创建socket连接&&& $fp = fsockopen("localhost",81,$errno,$errstr,10) or exit($errstr."---&".$errno);&&& //构造post请求的头&&& $header& = "POST /flandy/getpost.php HTTP/1.1\r\n";&&& $header .= "Host:127.0.0.1\r\n";&&& $header .= "Referer:/flandy/post.php\r\n";&&& $header .= "Content-Type: application/x-www-form-urlencoded\r\n";&&& $header .= "Content-Length: ".$length."\r\n";&&& $header .= "Connection: Close\r\n\r\n";&&& //添加post的字符串&&& $header .= $params."\r\n";&&& &&& //发送post的数据&&& fputs($fp,$header);&&& $inheader = 1;&&& while (!feof($fp)) {&&&&&&& $line = fgets($fp,1024); //去除请求包的头只显示页面的返回数据&&&&&&& if ($inheader && ($line == "\n" || $line == "\r\n")) {&&&&&&&&&&&& $inheader = 0;&&&&&&& }&&& &&& if ($inheader == 0) {&&&&&&&&& echo $&&&&&&& }&&& }fclose($fp);?&getpost.php的内容如下&?phpecho "this is the data posted";echo "&pre&";print_r($_REQUEST);echo "&/pre&";?&结果输出:this is the data postedArray(
[var1] =& abc
[var2] =& how are you , my friend??)以上代码在本机81端口下已经通过测试。方法二:使用PHP的curl扩展或HttpClient.class.php类,这两个非常类似,下面简单的列出curl的实现代码。两个文件post2.php和getpost2.phppost2.php的内容如下:&?php$psecode = ’NDE005’;$website = ’’;$amt = 1;$pwd = 123456;$ch = curl_init();$curl_url = "http://localhost:81/flandy/getpost2.php?web=" . $website ."&pwd=" . $pwd . "&action=check&pseid=" . $psecode ."&amt=" . $curl_setopt($ch, CURLOPT_URL, $curl_url);curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//不直接输出,返回到变量$curl_result = curl_exec($ch);$result = explode(',', $curl_result);curl_close($ch);print_r($result);?&getpost2.php的内容如下:&?phpecho "returndata&br&";echo "&pre&";print_r($_REQUEST);echo "&/pre&";?&结果输出:Array
(
[0] =& returndataArray(
[web] =& ’wwwbaiducom’
[pwd] =& 123456
[action] =& check
[pseid] =& ’NDE005’
[amt] =& 1)
)
方法三:这个要借助第三方类库HttpClient可以到这里下载:<?phprequire_once 'HttpClient.class.php’;$params = array(’web’ => ’’,’pwd’ => ’123456’,’action’ => ’check’,’pseid’ => ’NDE005’,’amt’ => 1);$pageContents = HttpClient::quickPost(’http://localhost:81/flandy/getpost3.php’, $params);$result = explode(’,’, $pageContents);print_r($result);?>
了这篇文章
类别:┆阅读(0)┆评论(0)
21:50:53 14:41:22 12:51:09 19:29:35 01:26:47 01:27:23 01:28:02推荐这篇日记的豆列
······

我要回帖

更多关于 php curl发送post请求 的文章

 

随机推荐