<?php
$curl = curl_init();
// 設置你需要抓取的URL
curl_setopt($curl, CURLOPT_URL, 'http://www.baidu.com');
// 是否包含頭部信息 1 爲包含
curl_setopt($curl, CURLOPT_HEADER, 1);
// 結果保存在變量中而不是輸出到頁面
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 運行cURL,請求網頁
$data = curl_exec($curl);
// 把專區的內容從gb2312 轉爲utf-8
$data = iconv('gb2312', 'utf-8//IGNORE', $data);
// 關閉URL請求
curl_close($curl);
?>
下面模擬post 請求
<?php
$url = 'http://localhost/test.php' ;
$fields = array(
'lname'=>'justcoding' ,
'fname'=>'phplover' ,
'title'=>'myapi',
'age'=>'27' ,
'email'=>'[email protected]' ,
'phone'=>'1353777303'
);
//$post_data = implode('&',$fields);
//open connection
$ch = curl_init() ;
//set the url, number of POST vars, POST data
curl_setopt($ch, CURLOPT_URL,$url) ;
curl_setopt($ch, CURLOPT_POST,1) ; // 啓用時會發送一個常規的POST請求,類型爲:application/x-www-form-urlencoded,就像表單提交的一樣。
curl_setopt($ch, CURLOPT_POSTFIELDS,$fields); // 在HTTP中的"POST"操作。如果要傳送一個文件,需要一個@開頭的文件名
ob_start();
curl_exec($ch);
$result = ob_get_contents() ;
ob_end_clean();
echo $result;
//close connection
curl_close($ch) ;
?>
上傳文件到服務器上
<?php
$localfile = "index.html";
$fp = fopen ($localfile, "r");
//$arr_ip = gethostbyname("www.xxx.com"); 可以獲取id地址
$ftp = "ftp://域名(www.xxx.com)/".$localfile;
$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, 1); // curl報告每一個錯誤
curl_setopt($ch, CURLOPT_USERPWD, 'user:password'); // 設置用戶名和密碼
curl_setopt($ch, CURLOPT_URL, $ftp); // 上傳到服務器上
curl_setopt($ch, CURLOPT_PUT, 1); // 設置這個選項爲一個非零值去用HTTP上傳一個文件。要上傳這個文件必須設置CURLOPT_INFILE和CURLOPT_INFILESIZE選項.
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 內容不直接輸出到頁面
curl_setopt($ch, CURLOPT_INFILE, $fp); // 這個文件是你傳送的文件的句柄。
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile)); //設置傳送文件的大小,不是必須
$http_result = curl_exec($ch);
$error = curl_error($ch);
echo $error."<br>";
$http_code = curl_getinfo($ch ,CURLINFO_HTTP_CODE);curl_close($ch);
fclose($fp);
?>