簡體   English   中英

如何翻譯此 curl 命令,使其在 PHP 腳本中工作?

[英]How can I translate this curl command so that it works in a PHP script?

CLI CURL -> PHP CURL(僅獲取標題)

curl \
 --head \
 --request GET \
 --silent \
 --header 'Authorization: Bearer XXX' \
 http://example.com/remote/foler/file.zip

我只需要獲取響應頭,而不需要每次都下載整個文件。

我還需要使用 GET 方法,因為遠程服務器限制了我。

據我所知,這不是一個真正的問題,更像是一項任務。 對此的響應在 PHP 手冊http://php.net/manual/es/book.curl.php 中 特別檢查CURLOPT_HEADER

如果您的 php 版本等於或高於 5.5,您可以檢查http://guzzle.readthedocs.org/en/latest/overview.html作為 cURL 上的抽象層。

和往常一樣,在 Stackoverflow 中搜索以查看問題或類似問題是否已經存在: https ://stackoverflow.com/search?q=curl+headers。 這將有助於保持問題和答案的質量。

只需采取幾個步驟。 1.初始化 2.設置選項 3.執行 4.關閉連接

<?php

$url = "www.example.com";

//initilise
$ch = curl_init();

//set the option
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);

//no body
curl_setopt($ch, CURLOPT_NOBODY, 1);

//set the method 
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');    

// request header
curl_setopt($ch, CURLINFO_HEADER_OUT, 1);

//execute
$result = curl_exec($ch);
$information = curl_getinfo($ch);

//close the connection
curl_close($ch);


echo '-- REQUEST HEADER --------------------------'.PHP_EOL;
print_r($information['request_header']);
echo '--------------------------------------------'.PHP_EOL;
echo PHP_EOL;
echo '-- RESPONSE HEADER -------------------------'.PHP_EOL;
print_r($result);
echo '--------------------------------------------'.PHP_EOL;

Curl 默認使用 GET。 如果您想將其設置為 POST 方法,則該選項是 CURLOPT_POST。 您可以設置很多選項,請查看 php.net 手冊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM