php curl的几段小应用 php 的CURL是不错的功能,下面收藏几段不错的片段?1 测试网站是否运行正常???Java代码?? ?? ?? ??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的操作????Java代码?? 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 保存某个网站下的所有图片???Java代码?? ??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?$l)?{?? ????$html?=?get_data('http://somedomain.com/id/'.$i.'/');?? ????getImages($html);?? ????$i?+=?1;?? }?? 4 FTP应用??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?options?? curl_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); ? ?