请选择 进入手机版 | 继续访问电脑版

宇诺微吧

 找回密码
 立即注册

扫一扫,访问微社区

搜索
热搜: 活动 交友 discuz
联系我们
宇诺微吧
欢迎QQ或来电咨询
有事您Q我
有事您Q我
工作时间:周一至周五
AM9:00-PM18:00
电话:0633-8530598
查看: 4468|回复: 2

php发送get、post请求的6种方法

[复制链接]

27

主题

28

帖子

4169

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4169
QQ
发表于 2017-8-10 10:31:20 | 显示全部楼层 |阅读模式
方法1: 用file_get_contents 以get方式获取内容:

<?php
$url='http://www.jb51.net/';
$html = file_get_contents($url);
echo $html;
?>

方法2: 用fopen打开url, 以get方式获取内容:

<?php
$fp = fopen($url, ‘r');
stream_get_meta_data($fp);
while(!feof($fp)) {
$result .= fgets($fp, 1024);
}
echo “url body: $result”;
fclose($fp);
?>


方法3:用file_get_contents函数,以post方式获取url


<?php
$data = array (‘foo' => ‘bar');
$data = http_build_query($data);
  
$opts = array (
‘http' => array (
‘method' => ‘POST',
‘header'=> “Content-type: application/x-www-form-urlencodedrn” .
“Content-Length: ” . strlen($data) . “rn”,
‘content' => $data
)
);
  
$context = stream_context_create($opts);
$html = file_get_contents(‘http://localhost/e/admin/test.html', false, $context);
  
echo $html;
?>


方法4:用fsockopen函数打开url,以get方式获取完整的数据,包括header和body,fsockopen需要 PHP.ini 中 allow_url_fopen 选项开启

<?php
function get_url ($url,$cookie=false)
{
$url = parse_url($url);
$query = $url[path].”?”.$url[query];
echo “Query:”.$query;
$fp = fsockopen( $url[host], $url[port]?$url[port]:80 , $errno, $errstr, 30);
if (!$fp) {
return false;
} else {
$request = “GET $query HTTP/1.1rn”;
$request .= “Host: $url[host]rn”;
$request .= “Connection: Closern”;
if($cookie) $request.=”Cookie:  $cookien”;
$request.=”rn”;
fwrite($fp,$request);
while(!@feof($fp)) {
$result .= @fgets($fp, 1024);
}
fclose($fp);
return $result;
}
}
//获取url的html部分,去掉header
function GetUrlHTML($url,$cookie=false)
{
$rowdata = get_url($url,$cookie);
if($rowdata)
{
$body= stristr($rowdata,”rnrn”);
$body=substr($body,4,strlen($body));
return $body;
}
  
return false;
}
?>


方法5:用fsockopen函数打开url,以POST方式获取完整的数据,包括header和body

<?php
function HTTP_Post($URL,$data,$cookie, $referrer=”")
{
  
// parsing the given URL
$URL_Info=parse_url($URL);
  
// Building referrer
if($referrer==”") // if not given use this script as referrer
$referrer=”111″;
  
// making string from $data
foreach($data as $key=>$value)
$values[]=”$key=”.urlencode($value);
$data_string=implode(“&”,$values);
  
// Find out which port is needed – if not given use standard (=80)
if(!isset($URL_Info["port"]))
$URL_Info["port"]=80;
  
// building POST-request:
$request.=”POST “.$URL_Info["path"].” HTTP/1.1n”;
$request.=”Host: “.$URL_Info["host"].”n”;
$request.=”Referer: $referern”;
$request.=”Content-type: application/x-www-form-urlencodedn”;
$request.=”Content-length: “.strlen($data_string).”n”;
$request.=”Connection: closen”;
  
$request.=”Cookie:  $cookien”;
  
$request.=”n”;
$request.=$data_string.”n”;
  
$fp = fsockopen($URL_Info["host"],$URL_Info["port"]);
fputs($fp, $request);
while(!feof($fp)) {
$result .= fgets($fp, 1024);
}
fclose($fp);
  
return $result;
}
  
?>


方法6:使用curl库,使用curl库之前,可能需要查看一下php.ini是否已经打开了curl扩展


?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, ‘http://www.jb51.net/');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
  
echo $file_contents;
?>












回复

使用道具 举报

0

主题

1

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2017-8-18 22:03:58 | 显示全部楼层
好帖,有才!












现实竞争如此激烈,如何在同行中胜出?
帮您抓住无限商机——海量投放广告,让有需求的客户主动找到您!

联系QQ:188662616   微信号:188662616


一直被同行模仿,从来没有被超越!

智友网络推广是一家专业从事网络营销推广和软件开发销售的专业技术团队,真正的网络营销业内人士;8年来,我们一直从事网络推广,从未间断过,因为专业,才值得依赖;我们有一支高素质的团队,为客户和合作伙伴提供一个最好支持和机会的平台。对于发展期的我们,创新和独特是我们的优势,我们期待更多的合作伙伴认识我们、了解我们,与我们共同发展;
【联系我们】

联系QQ:188662616 微信号:188662616

临武专业代发帖子,雷山网络推广,安远论坛发帖,河口产品推广,平邑外链代发,舞阳软文代发,宜阳网络营销,安阳网络推广策划方案|长子手工代发外链|监利博客论坛推广|屏南代发帖子包收录|琼海如何进行网络推广|陆丰广告公司|彭泽代发论文广告|绵阳网络推广知识|彭阳店铺推广|民权营销外包 。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2017-10-18 17:59:44 | 显示全部楼层
很好啊.谢谢楼主啊











代做站群、站群排名、站群推广、百度优化、论坛营销等咨询QQ:50317349
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|技术支持|Archiver|手机版|小黑屋|宇诺微吧 ( 本论坛代码来自网络如有侵权请联系我们

GMT+8, 2020-6-7 10:57 , Processed in 0.023681 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表