微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将此命令行curl转换为php curl?

我有一个命令行卷曲的代码,我想转换成PHP.我正在挣扎.

这是代码

$curl -H "Authorization: 622cee5f8c99c81e87614e9efc63eddb" https://api.service.com/member

大字符串将是我传递给它的变量.

这在PHP中看起来像什么?

解决方法:

您首先需要分析该行的作用:

$curl -H "Authorization: 622cee5f8c99c81e87614e9efc63eddb" https://api.service.com/member

这并不复杂,你发现curl’s manpage上解释了所有开关:

07001: (HTTP) Extra header to use when getting a web page. You may specify any number of extra headers. […]

您可以通过PHP中的curl_setopt_arrayDocs添加标题(所有可用选项在curl_setoptDocs中解释):

$ch = curl_init('https://api.service.com/member');
// set URL and other appropriate options
$options = array(        
    CURLOPT_HEADER => false,
    CURLOPT_HTTPHEADER => array("Authorization: 622cee5f8c99c81e87614e9efc63eddb"),
);
curl_setopt_array($ch, $options);
curl_exec($ch); // grab URL and pass it to the browser
curl_close($ch);

如果curl被阻止,你也可以使用PHP的HTTP功能,即使curl不可用也能正常工作(如果curl在内部可用,则需要curl):

$options = array('http' => array(
    'header' => array("Authorization: 622cee5f8c99c81e87614e9efc63eddb"),
));
$context = stream_context_create($options);
$result = file_get_contents('https://api.service.com/member', 0, $context);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐