PHP获取远程地址的资源到本地目录

function getFile($url,$save_dir='',$filename='',$type=0){
  if(trim($url)==''){
   return false;
  }
  if(trim($save_dir)==''){
   $save_dir='./';
  }
  if(0!==strrpos($save_dir,'/')){
   $save_dir.='/';
  }
  //创建保存目录
  if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){
   return false;
  }
 //获取远程文件所采用的方法
 if($type){
  $ch=curl_init();
  $timeout=5;
  curl_setopt($ch,CURLOPT_URL,$url);
  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
  $content=curl_exec($ch);
  curl_close($ch);
 }else{
  ob_start();
  readfile($url);
  $content=ob_get_contents();
  ob_end_clean();
}
 $size=strlen($content);
 //文件大小
 $fp2=@fopen($save_dir.$filename,'a');
 fwrite($fp2,$content);
 fclose($fp2);
 unset($content,$url);
 return array('file_name'=>$filename,'save_path'=>$save_dir.$filename);
}


$obj = getFile("124.162.54.232:8088/FileBrowse.aspx?key=D1DD8ECD058371AD4F8A71BB208F288042544DCE761747D607B37A6094DECD6A08E1D9E0EE4EC450FBA7A973DA123644EBBCEC0DD0A032306075A373E67807C074B615E297FC0667CFE97ABB726619267DB609F473061371CA6129BB8E1B6A595A455F39D7A2A1E23878BA874A92FE079829BBE7BC1E2966F743B7CA8BC9B63E14DD50A8058619BAD56F86CD926967738DB1143FA4C6709243FC518D6FA3A90D0A8AB448FD2E092B7CC62F2C3B6F6697A85A0843AC249898E6D5801DD86DE35F36056A7BABC0734F","datas","ok.wav",1);//调用

var_dump($obj);


//注意:此函数的第一个参数即为  远程抓取文件的地址;第二个参数为  保存抓取来资源的目录(此目录是程序执行创建的);第三个参数很重要,你获取的文件名,注意他的后缀要写上……

?>


 

你可能感兴趣的:(php)