puzzled 发表于 2015-8-28 09:52:04

使用PHP中的CURL类函数模拟POST

  今天来说一下使用PHP中的CURL类函数模拟POST。
CURL类函数,功能十分强大,可以用来抓取其他网页的内容、信息,常见的新闻小偷,别人的天气预报、甚至是GOOGLE的翻译结果等内容,都可以通过它来获取。这里简单举一个例子来说明它的用法。
  

代码



1 <?php
2 header('Content-Type:text/html;charset= utf-8');   //发送头部信息,确认页面编码
3$curlPost="wd=dog&f=3";          //定义需要发送的字符串,关键字与它的值
4 $ch=curl_init();         //初始化一个curl
5 curl_setopt($ch,CURLOPT_URL,'http://www.example.com/index.php'); //设置目标URL
6 curl_setopt($ch,CURLOPT_POST,1);         //设置使用POST发送数据
7 curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);      //设置POST数据内容为前面定义的字符串
8 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);       //设置是否输出返回结果(设置为不打印)
9 $data=curl_exec($ch);         //执行请求并返回结果
10 curl_close($ch);            //关闭CURL
11 echo $data;            //输出结果
12 ?>
  


  以上代码实现了一个向指定网页发送POST数据,并输出它返回结果的代码。实际使用时,返回结果后,可以通过正则替换来获取真正想要的内容,就可以实现把别人的、别的网站的内容归入自己站点了。
不过这样的缺点是,当目标网站挂掉之后,你就不会获取任何内容了。
另外使用CURL类函数,需要加载CURL扩展,否则会提示你函数未定义。
页: [1]
查看完整版本: 使用PHP中的CURL类函数模拟POST