Heim > Backend-Entwicklung > PHP-Tutorial > php curl_init函数用法举例

php curl_init函数用法举例

WBOY
Freigeben: 2016-07-25 08:54:24
Original
1051 Leute haben es durchsucht
  1. // 初始化一个 curl 对象
  2. $curl = curl_init();
  3. // 设置你需要抓取的url
  4. curl_setopt($curl, curlopt_url, 'http://bbs.it-home.org');
  5. // 设置header
  6. curl_setopt($curl, curlopt_header, 1);
  7. // 设置curl 参数,要求结果保存到字符串中还是输出到屏幕上。
  8. curl_setopt($curl, curlopt_returntransfer, 1);
  9. // 运行curl,请求网页
  10. $data = curl_exec($curl);
  11. // 关闭url请求
  12. curl_close($curl);
  13. // 显示获得的数据
  14. var_dump($data);
  15. ?>
复制代码

例2: post数据 sendsms.php,其可以接受两个表单域,一个是电话号码,一个是短信内容。 post数据

  1. $phonenumber = '13812345678';
  2. $message = 'this message was generated by curl and php';
  3. $curlpost = 'pnumber=' . urlencode($phonenumber) . '&message=' . urlencode($message) . '&submit=send';
  4. $ch = curl_init();
  5. curl_setopt($ch, curlopt_url, 'http://www.lxvoip.com/sendsms.php');
  6. curl_setopt($ch, curlopt_header, 1);
  7. curl_setopt($ch, curlopt_returntransfer, 1);
  8. curl_setopt($ch, curlopt_post, 1);
  9. curl_setopt($ch, curlopt_postfields, $curlpost);
  10. $data = curl_exec();
  11. curl_close($ch);
  12. ?>
复制代码

例3:使用代理服务器 使用代理服务器

  1. $ch = curl_init();
  2. curl_setopt($ch, curlopt_url, 'http://bbs.it-home.org');
  3. curl_setopt($ch, curlopt_header, 1);
  4. curl_setopt($ch, curlopt_returntransfer, 1);
  5. curl_setopt($ch, curlopt_httpproxytunnel, 1);
  6. curl_setopt($ch, curlopt_proxy, 'proxy.lxvoip.com:1080');
  7. curl_setopt($ch, curlopt_proxyuserpwd, 'user:password');
  8. $data = curl_exec();
  9. curl_close($ch);
  10. ?>
复制代码

例4: 模拟登录 curl 模拟登录 discuz 程序,适合dz7.0,将username改成你的用户名,userpass改成你的密码就可以了. curl 模拟登录 discuz 程序

!extension_loaded('curl') && die('the curl extension is not loaded.');

$discuz_url = 'http://www.lxvoip.com';//论坛地址 $login_url = $discuz_url .'/logging.php?action=login';//登录页地址 $get_url = $discuz_url .'/my.php?item=threads'; //我的帖子

$post_fields = array(); //以下两项不需要修改 $post_fields['loginfield'] = 'username'; $post_fields['loginsubmit'] = 'true'; //用户名和密码,必须填写 $post_fields['username'] = 'lxvoip'; $post_fields['password'] = '88888888'; //安全提问 $post_fields['questionid'] = 0; $post_fields['answer'] = ''; //@todo验证码 $post_fields['seccodeverify'] = '';

//获取表单formhash $ch = curl_init($login_url); curl_setopt($ch, curlopt_header, 0); curl_setopt($ch, curlopt_returntransfer, 1); $contents = curl_exec($ch); curl_close($ch); preg_match('//i', $contents, $matches); if(!empty($matches)) { $formhash = $matches[1]; } else { die('not found the forumhash.'); }

//post数据,获取cookie $cookie_file = dirname(__file__) . '/cookie.txt'; //$cookie_file = tempnam('/tmp'); $ch = curl_init($login_url); curl_setopt($ch, curlopt_header, 0); curl_setopt($ch, curlopt_returntransfer, 1); curl_setopt($ch, curlopt_post, 1); curl_setopt($ch, curlopt_postfields, $post_fields); curl_setopt($ch, curlopt_cookiejar, $cookie_file); curl_exec($ch); curl_close($ch);

//带着上面得到的cookie获取需要登录后才能查看的页面内容 $ch = curl_init($get_url); curl_setopt($ch, curlopt_header, 0); curl_setopt($ch, curlopt_returntransfer, 0); curl_setopt($ch, curlopt_cookiefile, $cookie_file); $contents = curl_exec($ch); curl_close($ch);

var_dump($contents);



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage