Code前端首页关于Code前端联系我们

phpcurlsameorigin的简单介绍

terry 2年前 (2023-09-30) 阅读数 27 #PHP
文章标签 PHP sort

本文目录一览:

  • 1、php Curl的get和post方法
  • 2、PHP怎么开启CURL函数
  • 3、php curl的几种用法

php Curl的get和post方法

get方法

function http_get($url)

{

    $oCurl = curl_init();

    if (stripos($url, "https://") !== FALSE) {

        curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, FALSE);

        curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, FALSE);

        //curl_setopt($oCurl, CURLOPT_SSLVERSION, 1);

        //CURL_SSLVERSION_TLSv1

    }

    curl_setopt($oCurl, CURLOPT_URL, $url);

    curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1);

    $sContent = curl_exec($oCurl);

    $aStatus = curl_getinfo($oCurl);

    curl_close($oCurl);

    if (intval($aStatus["http_code"]) == 200) {

        return $sContent;

    } else {

        return false;

    }

}

post方法

    // curlpost请求

    function http_post($url, $data = NULL, $json = false)

    {

        $curl = curl_init();

        curl_setopt($curl, CURLOPT_URL, $url);

        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

        if (!empty($data)) {

            if ($json is_array($data)) {

                $data = json_encode($data);

            }

            curl_setopt($curl, CURLOPT_POST, 1);

            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

            if ($json) { //发送JSON数据

                curl_setopt($curl, CURLOPT_HEADER, 0);

                curl_setopt(

                    $curl,

                    CURLOPT_HTTPHEADER,

                    array(

                        'Content-Type: application/json; charset=utf-8',

                        'Content-Length:' . strlen($data)

                    )

                );

            }

        }

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

        $res = curl_exec($curl);

        $errorno = curl_errno($curl);

        if ($errorno) {

            return array('errorno' = false, 'errmsg' = $errorno);

        }

        curl_close($curl);

        return json_decode($res, true);

    }

PHP怎么开启CURL函数

1、将PHP文件夹下的三个文件php_curl.dll,libeay32.dll,ssleay32.dll复制到system32下;

2、将php.ini(c:WINDOWS目录下)中的;extension=php_curl.dll中的分号去掉;

3、重启apache或者IIS。

php curl的几种用法

总结一下项目中用到curl的几种方式1. php curl的默认调用方法,get方式访问url$ch = curl_init();curl_setopt($ch, CURLOPT_HTTPHEADER, $header); //设置http头curl_setopt($ch, CURLOPT_ENCODING, "gzip" ); //设置为客户端支持gzip压缩curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30 ); //设置连接等待时间curl_setopt($ch, CURLOPT_URL, $url );curl_exec( $ch );if ($error = curl_error($ch) ) {//出错处理return -1;}fclose($fp);$curl_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); //获取http返回值if( $curl_code == 200 ) {//正常访问url}//异常2. 设置http header支持curl访问lighttpd服务器Java代码$header[]= 'Expect:';$header[]= 'Expect:';3. 设置curl,只获取http header,不获取body:Java代码curl_setopt($ch, CURLOPT_HEADER, 1);curl_setopt($ch, CURLOPT_NOBODY, 1);curl_setopt($ch, CURLOPT_HEADER, 1);curl_setopt($ch, CURLOPT_NOBODY, 1);或者只获取body:Java代码curl_setopt($ch, CURLOPT_HEADER, 0); // make sure we get the bodycurl_setopt($ch, CURLOPT_NOBODY, 0);curl_setopt($ch, CURLOPT_HEADER, 0); // make sure we get the bodycurl_setopt($ch, CURLOPT_NOBODY, 0);4. 访问虚拟主机,需设置Host$header[]= 'Host: '.$host;5. 使用post, put, delete等REStful方式访问urlpost:curl_setopt($ch, CURLOPT_POST, 1 );put, delete:curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE"); //或者PUT,需要服务器支持这些方法。6. 保存下载内容为文件

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门