4

如何在 PHP 中发送下面提到的 CURL 请求?我将在 php 中使用哪些函数?

$ curl -H 'X-Sifter-Token: 343b1b831066a40e308e0af92e0f06f0' \
-H 'Accept: application/json' \ 
'http://example.sifterapp.com/api/projects'

我已经尝试过这段代码..但它不起作用..请做必要的事情

$curlString = "";

$curlString .= "-H \"X-Sifter-Token: 343b1b831066a40e308e0af92e0f06f0\" \";

$curlString .= "-H \"Accept: application/json\" \";

$url="http://example.sifterapp.com/api/projects";


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_HTTPHEADER, $curlString);
$data = curl_exec($ch);
if (curl_errno($ch)) {
print "Error: " . curl_error($ch);
} else {
// Show me the result
var_dump($data);
curl_close($ch);
}
4

1 回答 1

8

你没有正确使用CURLOPT_HTTPHEADER。从手册:

http://php.net/manual/en/function.curl-setopt.php

CURLOPT_HTTPHEADER要设置的 HTTP 标头字段数组,格式为array('Content-type: text/plain', 'Content-length: 100')

所以你需要:

  curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'X-Sifter-Token: 343b1b831066a40e308e0af92e0f06f0',
        'Accept: application/json',
  ));
于 2012-09-20T12:41:41.213 回答