public static function uploadFile($url,$Folder='uploads/qywx'){
if(!$url || empty($url)) OverApi('不存在此文件');
$file_path = Env::get('root_path') . 'public' . DS . $Folder. DS;
$_fileInfo = file_get_contents($url);
//拿到HTTP响应头
//$http_response_header 仅支持方法:fopen, file_get_contents, copy; 只要在 PHP 内,调用内置的部分函数请求了远程地址,就会自动将 HTTP 响应头填充到 $http_response_header 变量中
$_fileNameHeader = $http_response_header;
//处理头信息,拿到文件名称及后缀,jpg,pdf,ppt...等等
$file_name=false;
if(is_array($_fileNameHeader)){
foreach ($_fileNameHeader as $key=>$value){
if(strstr($value, 'filename')){
$_string = strstr($value, 'filename');
$_flieNameArr = explode('=',$_string);
$file_name = str_replace('"',"",$_flieNameArr[1]);
}
}
}else{
return false;
}
if(!$file_name)return false;
//保存文件,后缀及名称和企业微信临时文件一致
$res = file_put_contents($file_path.$file_name, $_fileInfo);
$data=[];
if($res>0){
// 获取文件的存放相对路径
$data['file_path'] = $Folder. '/' .$file_name;
}
// 数据返回
return $data;
}
保存企业微信临时文件到服务器,文件名及后缀和企业微信相同
OverApi()为封装的终止运行方法,换成你自己的