PHP curl -最近被这些警告垃圾邮件,无处不在

qpgpyjmq  于 2023-05-27  发布在  PHP
关注(0)|答案(1)|浏览(125)
private function _curl($url, $values)
{
    $curl = curl_init($url);

    $options = array(
        CURLOPT_VERBOSE => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => http_build_query($values),
        CURLOPT_CUSTOMREQUEST => "POST",
        CURLOPT_TIMEOUT => 10,
        CURLOPT_HTTPHEADER => "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
        //CURLOPT_SSL_VERIFYPEER => false //for dev
    );

    curl_setopt_array($curl, $options);
    $rep = curl_exec($curl);

    parse_str($rep, $response);
    curl_close($curl);

    return $response;
}

这就是我正在使用的代码,我一直收到这些警告:

PHP Warning:  curl_setopt_array(): You must pass either an object or an array with the CURLOPT_HTTPHEADER, CURLOPT_QUOTE, CURLOPT_HTTP200ALIASES and CURLOPT_POSTQUOTE arguments

这段代码已经正常运行了,只是突然出现了问题。
我只需要传递这些参数,但是我想知道为什么这突然不起作用了,而它以前是正常工作的?有没有办法不传递参数就解决这个问题?我似乎也找不到任何文档说明需要这些参数…

bsxbgnwa

bsxbgnwa1#

问题是CURLOPT_HTTPHEADER需要是一个数组,如下所示:

CURLOPT_HTTPHEADER => Array("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8")

相关问题