摘要:获取远程文件图片等有三种方式使用函数获取文件,在用函数把文件写到本地。
获取远程文件(图片等)
有三种方式
file_get_contents($url);
使用file_get_contents()函数获取文件,在用file_put_contents()函数把文件写到本地。
使用curl
//获取到文件 $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,60); $file=curl_exec($ch); curl_close($ch); //写入本地 $fp=fopen($save_dir.$filename,"a"); fwrite($fp,$file); fclose($fp);
3 . 使用ob_start()
//获取文件 ob_start(); //打开缓冲区 readfile($url); $file=ob_get_contents(); ob_end_clean(); //写入本地 $fp=fopen($save_dir.$filename,"a"); fwrite($fp,$file); fclose($fp);
$fp = fopen("lock.txt","w+"); if(flock($fp,LOCK_EX)){ //获得写锁,写数据 fwrite($fp,"write something"); //解除锁定 flock($fp,LOCK_UN); }else{ echo "file is locking"; } fclose($fp);
header("Location:http://www.baidu.com"); //立刻跳转 header("refresh:3;url=http://www.baidu.com"); //三秒后跳转 //php函数跳转缺点:执行前不能有输出 //meta跳转 echo "";创建多级目录
function create_dir($path,$mode=0777){ if(is_dir($path)){ return true; }else{ if(mkdir($path,$mode,true)){ return true; }else{ return false; } } }
function getCat($data,$pid=0,$level=0){ static $res; foreach($data as $k=>$v){ if($v["pid"]=$pid){ $v["level"] = $level; $res[] = $v; getCat($data,$v["id"],$level+1); } } return $res; }
function getExt($url){ $arr = parse_url($url); //解析url,返回数组 $file = basename($arr["path"]); //取文件名部分 $ext = explode(".",$file); return $ext[count($ext)-1]; } function getExt($url){ $url = basename($url); $pos1 = strpos($url,"."); $pos2 = strpos($url,"?"); if(strstr($url,"?")){ return substr($url,$pos1+1,$pos2-$pos1-1); }else{ return substr($url,$pos1+1); } }
function my_scandir($dir){ $files = array(); if(is_dir($dir)){ if($handle = opendir($dir)){ while(($file = readdir($handle)) != false){ if($file!="." && $file!=".." ){ if(is_dir($dir."/".$file)){ $files[$file] = my_scandir($dir."/".$file); }else{ $files[] = $dir."/".$file; } } } closedir($handle); return $files; }else{ return false; } }else{ return false; } }
待续……
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/23090.html
阅读 2805·2023-04-26 02:23
阅读 1484·2021-11-11 16:55
阅读 3105·2021-10-19 11:47
阅读 3240·2021-09-22 15:15
阅读 1931·2019-08-30 15:55
阅读 993·2019-08-29 15:43
阅读 1245·2019-08-29 13:16
阅读 2114·2019-08-29 12:38