2012-05-01 3 views
3

У меня есть бит строки из командной строки, который я хочу перевести на php. Я пытаюсь.Как перевести эту строку командной строки в php curl?

Вот строка кода

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

большая строка будет переменная я бы перейти в него.

Как это выглядит на PHP?

ответ

3

Сначала вам необходимо проанализировать, что делает эта линия:

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

Это не сложно, вы найдете все переключатели объяснен на curl's manpage:

-H, --header <header>: (HTTP) Дополнительный заголовок для использования при получении веб-страницы. Вы можете указать любое количество дополнительных заголовков. [...]

Вы можете добавить заголовок через curl_setopt_arrayDocs в PHP (все доступные опции описаны в 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); 

В случае локон заблокирован, вы можете сделать это, а также с РНР возможности HTTP, который работает, даже если ротор не доступен (и он принимает завиток, если ротор доступен внутри):

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

Вы должны посмотреть на функции в php. С помощью curl_setopt() вы можете установить заголовки запроса.

1

1) Вы можете использовать Curl functions

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); 
?> 
0

Предполагая, что вы знакомы с PHP cURL functions, вы можете использовать curl_setopt() передать любой HTTP-заголовок в запросе:

<?php 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "https://api.service.com/member"); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: 622cee5f8c99c81e87614e9efc63eddb")); 
curl_exec($ch); 
Смежные вопросы