记住用户名密码
/**
* @param URL转换本地绝对路径
* @param string $url 目标地址
* @param addtime 2021年9月1日 */
public function getlocalURL($val)
{ $pathinfos = pathinfo($val); $tzm = $pathinfos['extension']; $save_dir = "./temps/"; // 服务资源目录
$filename = date('Ymd') . time() . '.' . $tzm; // 自定义名称
# 检测文件大小
$Size = $this->getFileSize($val); $file1 = ''; // 超过10M不保存
$result = $this->getFile($val, $save_dir, $filename, 1); // if ($Size < 10) {}else{
// echo '下载失败';
// }
if ($result['code'] == 200) { $file1 = '/home/www/wwwroot/jzt_admin_tp/public/temps/' . $result["fild_name"];
} return $file1;
} /**
* @param URL获取本地FILE
* @param string $url 目标地址
* @param addtime 2021年9月1日 */
public function getFiles($url)
{ //获取文件dir
$file_dir = $url; //使用file_exists判断文件是否存
ob_end_clean(); ob_start(); //打开文件
$handler = fopen($file_dir, 'r+b'); $file_size = filesize($file_dir); //声明头信息
Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: " . $file_size); Header("Content-Disposition: attachment; filename=" . basename($file_dir)); // 输出文件内容
return fread($handler, $file_size); fclose($handler); ob_end_flush();
}
/**
* @param string $target_url 上传目标地址
* @param string $filename 上传文件路径
* @param string $form_name 表单名称 */
public function curlUploadFile($target_url, $filename, $form_name)
{ $uploadFileMimeType = mime_content_type($filename); $post_data['file'] = curl_file_create($filename, $uploadFileMimeType, $form_name); $ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $target_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $result = curl_exec($ch);
curl_close($ch); return $result;
} /**
* 下载文件到服务器
* addtime 2021年8月30日 09:38:43 */
public 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); $res['code'] = 200; $res['fild_name'] = $filename; return $res;
} /**
* 检测文件大小
* addtime 2021年9月1日 */
public function getFileSize($url)
{ $res = get_headers($url, true); $filesize = round($res['Content-Length'] / 1024 / 1024, 2); //四舍五入获取文件大小,单位M
return $filesize;
}
目前有 0 条留言 其中:访客:0 条, 博主:0 条