3

PHP に変換したいコマンド ラインの curl ビットがあります。私は苦労しています。

ここにコード行があります

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

大きな文字列は、私がそれに渡す変数になります。

これは PHP ではどのように見えるでしょうか?

4

3 に答える 3

3

まず、その行が何をするかを分析する必要があります。

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

複雑ではありません。すべてのスイッチがcurlのマンページで説明されています。

-H, --header <header>:(HTTP)Webページを取得するときに使用する追加のヘッダー。追加のヘッダーはいくつでも指定できます。[...]

curl_setopt_arrayPHPのドキュメントを介してヘッダーを追加できます(使用可能なすべてのオプションはcurl_setoptドキュメントで説明されています):

$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がブロックされている場合は、curlが使用できない場合でも機能するPHPのHTTP機能を使用してこれを行うことができます(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);
于 2012-05-01T09:02:22.697 に答える
1

1) Curl関数を使用できます

2) exec()を使用できます

exec('curl -H "Authorization: 622cee5f8c99c81e87614e9efc63eddb" https://api.service.com/member');

3)情報を文字列としてのみ必要な場合は、 file_get_contents()を使用できます...

<?php
// Create a stream
$opts = array(
  'http'=>array(
    'method'=>"GET",
    'header'=>"Authorization: 622cee5f8c99c81e87614e9efc63eddb"
  )
);

$context = stream_context_create($opts);

// Open the file using the HTTP headers set above
$file = file_get_contents('https://api.service.com/member', false, $context);
?>
于 2012-05-01T08:58:40.213 に答える
1

curl_*phpの関数を調べる必要があります。リクエストのヘッダーをcurl_setopt()設定できます。

于 2012-05-01T08:57:42.897 に答える