尝试使用CURL发送带有XML正文的发布请求,但不断收到跟踪错误,
Warning: curl_setopt() expects parameter 2 to be long, string given
我正在使用以下CURL请求,
$ch = curl_init(POST_URL);
curl_setopt($ch, CURLOPT_MUTE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($ch, CURLOPT_POSTFIELDS, "$xml");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
答案 0 :(得分:0)
我认为警告是指CURLOPT_MUTE
选项。根据{{3}},在{cURL 7.15.5中删除了CURLOPT_MUTE
:
CURLOPT_MUTE TRUE在cURL函数方面完全无声。
在cURL 7.15.5中删除(您可以使用CURLOPT_RETURNTRANSFER)
运行代码(PHP 5.5.35,报告所有错误)时,我收到通知:
Notice: Use of undefined constant CURLOPT_MUTE - assumed 'CURLOPT_MUTE'
然后发出警告:
Warning: curl_setopt() expects parameter 2 to be long, string given
因此,似乎PHP将CURLOPT_MUTE
解释为字符串,因此警告。