前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >PHP执行一个http请求

PHP执行一个http请求

作者头像
用户7657330
发布2020-08-14 15:23:54
发布2020-08-14 15:23:54
75000
代码可运行
举报
文章被收录于专栏:程序生涯程序生涯
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
复制
<?php
/**
 * 执行一个 HTTP 请求
 *
 * @param int $zone 通知的区
 * @param string $php 执行请求的php文件
 * @param mixed $Params 表单参数
 * @param string $Method 请求方法 post / get
 * @return array 结果数组
 */
function sendSGHttp($Url, $Params, $timeout = 3, $Method = 'get')
{
    if (null == $Url) return null;
    $en_url = $Url . "?" . urldecode(urlencode("$Params"));

    $Curl = curl_init();//初始化curl

    if ('get' == $Method) {//以GET方式发送请求
//curl_setopt($Curl, CURLOPT_URL, "$Url?$Params");
        curl_setopt($Curl, CURLOPT_URL, $en_url);
    } else {//以POST方式发送请求
        curl_setopt($Curl, CURLOPT_URL, $Url);
        curl_setopt($Curl, CURLOPT_POST, 1);//post提交方式
        curl_setopt($Curl, CURLOPT_POSTFIELDS, $Params);//设置传送的参数
    }

    curl_setopt($Curl, CURLOPT_HEADER, false);//设置header
    curl_setopt($Curl, CURLOPT_RETURNTRANSFER, true);//要求结果为字符串且输出到屏幕上
    curl_setopt($Curl, CURLOPT_CONNECTTIMEOUT, $timeout);//设置等待时间

    $Res = curl_exec($Curl);//运行curl
    $Err = curl_error($Curl);

    if (false === $Res || !empty($Err)) {
        $Errno = curl_errno($Curl);
        $Info = curl_getinfo($Curl);
        curl_close($Curl);

        return array(
            'result' => false,
            'errno' => $Errno,
            'msg' => $Err,
            'info' => $Info,
        );
    }
    curl_close($Curl);//关闭curl
    return array(
        'result' => true,
        'msg' => $Res,
    );
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/03/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档