本文目錄一覽:
- 1、curl命令在PHP中怎麼用
- 2、PHP_CURL使用詳解
- 3、PHP怎麼開啟CURL函數
- 4、PHP如何開啟curl
- 5、php如何執行linux的curl指令
- 6、PHP如何開啟CURL擴展支持?
curl命令在PHP中怎麼用
這是我項目中一直在用的一個方法
?php
function curl($url,$params = array(),$header = array(),$timeout = 180){
if(empty($url)) return $url;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,$url);//請求url地址
curl_setopt($curl, CURLOPT_HTTPHEADER , $header ); //構造IP
if(!empty($params) count($params) 0){
curl_setopt($curl, CURLOPT_POST, true);
//Request Payload格式數據
if(isset($params[‘is_json’]) $params[‘is_json’] === true){
unset($params[‘is_json’]);
$params = json_encode($params);
}else{
$params = http_build_query($params);
}
curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
}
//curl_setopt($curl, CURLOPT_HEADER, true);//是否返迴響應頭信息
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//是否將結果返回
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);//是否重定向
//curl_setopt($curl, CURLOPT_USERAGENT, ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36’);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 只信任CA頒佈的證書
//curl_setopt($curl, CURLOPT_CAINFO, $cacert); // CA根證書(用來驗證的網站證書是否是CA頒佈)
//curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 檢查證書中是否設置域名,並且是否與提供的主機名匹配
// 從證書中檢查SSL加密算法是否存在
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
//curl_setopt($curl, CURLOPT_HTTPHEADER, array(“Expect: “));
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout);//用來告訴PHP腳本在成功連接服務器前等待多久(連接成功之後就會開始緩衝輸出),這個參數是為了應對目標服務器的過載,下線,或者崩潰等可能狀況;
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);//用來告訴成功PHP腳本,從服務器接收緩衝完成前需要等待多長時間。如果目標是個巨大的文件,生成內容速度過慢或者鏈路速度過慢,這個參數就會很有用。
// 自動設置Referer
curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
//curl_setopt($curl, CURLOPT_COOKIEJAR, “D:phpStudyWWWcjcooBE66.tmp”);// //寫入cookie信息
//setcookie(‘cookie_jar’, $cookie_jar); //保存cookie路徑
$data = curl_exec($curl); //執行
curl_close($curl);
return $data;
}
?
PHP_CURL使用詳解
CURL是PHP的一個擴展,利用該擴展可以實現服務器之間的數據或文件傳輸,用來採集網絡中的html網頁文件、其他服務器提供接口數據等。
GET請求
POST請求
PHP怎麼開啟CURL函數
1、將PHP文件夾下的三個文件php_curl.dll,libeay32.dll,ssleay32.dll複製到system32下;
2、將php.ini(c:WINDOWS目錄下)中的;extension=php_curl.dll中的分號去掉;
3、重啟apache或者IIS。
PHP如何開啟curl
在安裝一些PHP網站的時候,會提示要求開啟curl_getinfo()函數支持功能,否則網站無法安裝,在網上找了一些資料,試了好多次終於將curl_getinfo()的功能開啟,下面介紹一下開啟的具體過程。
工具/原料
php.ini
方法/步驟
首先打開php.ini文件,一般默認放在C盤windows目錄下。
在php.ini文件夾下,查找extension=php_curl.dll,找到後,把它前面的分號去掉,讓它起作用。
然後再查找extension_dir=,看看後面的地址指向哪個文件夾,然後打開這個文件夾。
從這個php5文件夾中找到libeay32.dll, ssleay32.dll,這兩個文件,然後把這兩個文件拷貝到c盤windows里的system32文件中。
重新啟動系統就可以了,網上說只要重啟iis或apcha等,但試了好像不靈,果斷重啟都可以了。
php如何執行linux的curl指令
PHP 中執行系統命令有幾種方式:
system():和 C 語言中的 system() 函數的用法是一樣的,參數為命令行,成功則返回命令輸出的最後一行,失敗則返回 FALSE。
shell_exec():執行命令,然後返回命令執行後的 stdout 輸出。
passthru():直接執行命令,然後將輸出內容直接顯示到網頁上。
在這裡,curl 的輸出不用顯示到網頁上,所以 system() 可能比較合適。
PHP如何開啟CURL擴展支持?
開啟curl擴展,這需要修改PHP的配置,在Windows 中只需簡單三步:
將PHP安裝文件夾下的三個文件php_curl.dll(可能在ext文件夾中),libeay32.dll,ssleay32.dll 複製到 %windir%/system32下。
2、打開php.ini(可能在PHP環境的安裝目錄下,默認在c:\WINDOWS目錄下),將;extension=php_curl.dll頭部的分號去掉。
3、重啟php的服務(apache或者IIS),如重啟IIS,運行iisreset即可。
原創文章,作者:DWWG9,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/128049.html