【发布时间】:2022-06-15 22:41:58
【问题描述】:
我正在从 PHP 7.4 升级到 PHP 8.0.13,突然在我的 cURL 请求中出现了这个错误:致命错误:未捕获的 ValueError:curl_setopt_array(): Argument #2 ($options) must contain only valid cURL options
这是我的代码:
curl_setopt_array($curl, [
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_URL => 'https://'.$owncloud.'...' . $folderOwncloud . '/' . basename($filename) ,
CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
CURLOPT_USERPWD => USERNAME . ':' . PASSWORD,
CURLOPT_PUT => 1,
CURLOPT_INFILE => $fh_res,
CURLOPT_INFILESIZE => filesize($file_path_str),
CURLOPT_RETURNTRANSFER => true,
]);
curl_exec($curl);
fclose($fh_res);
curl_close($curl);
【问题讨论】:
-
请不要发布代码和错误消息的图像,它们非常难以阅读和排除故障。请edit您的帖子并将其添加为文本。
-
为什么有行通过
CURLOPT_BINARYTRANSFER?见:#55635 CURLOPT_BINARYTRANSFER no longer used? -
也就是说,你的 IDE 已经通过取消你的 curl 选项给你一个提示。
BINARYTRANSFER是 not listed as a valid option -
即使删除也不行
-
请考虑您提供给我们的信息。如果我们只知道:“它不起作用”,我们如何为您提供帮助?你有另一个错误吗?我预计会有几十个错误,如果不是更多的话......这可能需要一些时间。