zoukankan      html  css  js  c++  java
  • curl发起网络请求

    curl发起网络请求

    主体函数:

    <?php
    /**
     * 发起网络请求
     * @param string $url
     * @param $data
     * @param array $header
     * @return bool|string
     */
    function http_request(string $url, $data = [], array $header = []) {
        $ret = '';
        // 1、初始化
        $ch = curl_init();
        // 2、相关配置
        # 设置请求的URL地址
        curl_setopt($ch, CURLOPT_URL, $url);
        # 设置一下执行成功后不直接返回到客户端
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        # 设置超时时间  单位是秒
        curl_setopt($ch, CURLOPT_TIMEOUT, 30);
        # 不进行证书的检测
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        # 伪造一个请求的浏览器型号
        curl_setopt($ch, CURLOPT_USERAGENT, 'msie');
    
        // 表示有请求体,是POST的提交
        if (!empty($data)) {
            # 指明是一个POST请求
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
            if (is_string($data)) {
                # 设置头信息,告诉接受者我们发送的数据类型
                curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
            }
        }
        // 3、执行
        $ret = curl_exec($ch);
        # 请求的错误码 为0表示请求正确,大于0则表求请求失败的
        if (curl_errno($ch) > 0) {
            echo curl_error($ch);
            exit;
        }
        // 4、关闭请求资源
        curl_close($ch);
        return $ret;
    }

    调用函数:

    <?php
    //推荐使用curl
    //引入curl的自定义函数
    include __DIR__.'/function.php';
    
    $url = '*********************';
    
    $html = http_request($url);
    
    //正则表达式匹配 video
    
    //修饰符
    //i 不区分大小写 U 禁止贪婪 s忽略换行
    
    $preg = '#<a title="(.*)"></a>#is';
    
    preg_match_all($preg,$html,$arr);
    
    print_r($arr);
  • 相关阅读:
    编译
    Package vim is not available, but is referred to by another package.
    Http 请求处理流程 Asp.Net 编程 TraceFact.Net
    JavaScript中两个感叹号的作用
    IE6 链接失效 <a>失效 不能点击
    父元素绝对定位 子元素在IE6 不能点击
    ie6 ie7 绝对定位 相对定位 层被遮住
    HTTP深入浅出http请求
    主流的js template引擎 前端模板
    第3章:基本概念(一)
  • 原文地址:https://www.cnblogs.com/zqblog1314/p/13322999.html
Copyright © 2011-2022 走看看