博主信息
博文 19
粉丝 0
评论 0
访问量 17999
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
通过curl请求接口实现数据读取
王浩
原创
818人浏览过
  1. 作业内容:1、把课上知识点练习。

  1. <?php
  2. /**
  3. * curl实现网络请求
  4. * @param $url 请求的网址
  5. * @param $data 数组或者字符串
  6. * @param $is_post 是否是POST请求
  7. * @return $output 返回的json数据
  8. */
  9. function Mycurl($url, $data=[], $is_post=0)
  10. {
  11. if($is_post){ // POST请求
  12. curl_setopt($ch, CURLOPT_POST, 1); // 表明是POST请求
  13. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  14. }else{ // GET请求
  15. if(is_array($data) && count($data) > 0){
  16. $url .= "?";
  17. foreach($data as $k=>$v){
  18. $url .= $k ."=".$v."&";
  19. }
  20. }
  21. }
  22. $ch = curl_init(); // 初始化,获取CURL句柄
  23. // 开始配置参数
  24. curl_setopt($ch, CURLOPT_URL, $url); //请求URL
  25. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
  26. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  27. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //返回数据流,而不是直接输出
  28. curl_setopt($ch, CURLOPT_HEADER, 0); //无需响应的header头
  29. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); //设置响应超时时间,单位为秒
  30. //去除最后一个拼装的&符号
  31. $url = rtrim($url, '&');
  32. // 执行并获取返回数据
  33. $output = curl_exec($ch);
  34. if($output === false){
  35. $output = "curl error: ". curl_errno($ch);
  36. }
  37. curl_close($ch);
  38. return $output;
  39. }
  40. // 通过聚合接口获取笑话列表
  41. $url = 'http://v.juhe.cn/joke/content/text.php';
  42. $data = [
  43. "page" => 1, // 当前页数,默认1,最大20
  44. "pagesize" => 5, // 每次返回条数,默认1,最大20
  45. "key" => '6ddde091291b4c2b37b385b7d84c1ffd' //key
  46. ];
  47. $joke_json = Mycurl($url, $data);
  48. $joke_obj = json_decode($joke_json, true);
  49. echo '<table><tr><th>笑话列表</th></tr>';
  50. foreach($joke_obj['result']['data'] as $k=>$v){
  51. echo '<tr>';
  52. echo '<td>'.$v['content'].'</td>';
  53. echo '</tr>';
  54. }
  55. echo '</table>';
  56. ?>
  57. <style>
  58. table{
  59. width: 400px;
  60. border-collapse: collapse;
  61. }
  62. th{
  63. padding: 20px;
  64. }
  65. td{
  66. padding: 15px;
  67. border: 1px solid #ccc;
  68. }
  69. </style>
批改老师:PHPzPHPz

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学