首頁 >後端開發 >php教程 >php curl的几段小运用

php curl的几段小运用

WBOY
WBOY原創
2016-06-13 10:30:03739瀏覽

php curl的几段小应用
php 的CURL是不错的功能,下面收藏几段不错的片段

1 测试网站是否运行正常
  

  if (isDomainAvailible('http://gz.itownet.cn'))       {               echo "Up and running!";       }       else       {               echo "Woops, nothing found there.";       }       //returns true, if domain is availible, false if not       function isDomainAvailible($domain)       {               //check, if a valid url is provided               if(!filter_var($domain, FILTER_VALIDATE_URL))               {                       return false;               }               //initialize curl               $curlInit = curl_init($domain);               curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);               curl_setopt($curlInit,CURLOPT_HEADER,true);               curl_setopt($curlInit,CURLOPT_NOBODY,true);               curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);               //get answer               $response = curl_exec($curlInit);               curl_close($curlInit);               if ($response) return true;               return false;       }?>


2 可以代替file_gecontents的操作
   
function file_get_contents_curl($url) {	$ch = curl_init();	curl_setopt($ch, CURLOPT_HEADER, 0);	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Set curl to return the data instead of printing it to the browser.	curl_setopt($ch, CURLOPT_URL, $url);	$data = curl_exec($ch);	curl_close($ch);	return $data;}


3 保存某个网站下的所有图片
  
  function getImages($html) {    $matches = array();    $regex = '~http://somedomain.com/images/(.*?)\.jpg~i';    preg_match_all($regex, $html, $matches);    foreach ($matches[1] as $img) {        saveImg($img);    }}function saveImg($name) {    $url = 'http://somedomain.com/images/'.$name.'.jpg';    $data = get_data($url);    file_put_contents('photos/'.$name.'.jpg', $data);}$i = 1;$l = 101;while ($i <br><br>4 FTP应用<br>  <pre name="code" class="java">// open a file pointer$file = fopen("/path/to/file", "r");// the url contains most of the info needed$url = "ftp://username:[email protected]:21/path/to/new/file";$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// upload related optionscurl_setopt($ch, CURLOPT_UPLOAD, 1);curl_setopt($ch, CURLOPT_INFILE, $fp);curl_setopt($ch, CURLOPT_INFILESIZE, filesize("/path/to/file"));// set for ASCII mode (e.g. text files)curl_setopt($ch, CURLOPT_FTPASCII, 1);$output = curl_exec($ch);curl_close($ch);
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn