拆分一:下载zip压缩后的照片
$url = 'https://fuss10.elemecdn.com/c/6c/69a7740b4ab864ac0639eb583d68fjpeg.jpeg';
$img = file_get_contents("compress.zlib://".$url);
$data = file_put_contents('E:/img/aaaaaaaaaaaa.jpeg',$img);
拆分二:下载https图片
确保已经在php.ini 打开openssl扩展和 fopen url
$arrContextOptions = array(
"ssl"=>array(
"verify_peer"=>false,
"verify_peer_name"=>false,
),
);
// 读取图片
$img = file_get_contents($url, false, stream_context_create($arrContextOptions));
// 下载图片
file_put_contents('./files/aaaaaaaaaaaa.jpg',$img);
合并三:下载https的zip后的图片
$linkUrl = $_REQUEST['url'];
$urlpos = 0; // 域名所在的位置
$domain = 'www.xxx.com'; // 当前域名
// 判断是否可以执行判断
$urlpos = strpos($linkUrl,$domain);
// 如果不可以下载
if(!$download)return;
// 截取文件后缀
$full_name = substr($linkUrl,$urlpos+strlen($domain));
// 获取文件名字
$filename = basename($full_name);
// 获取文件路径
$filedir = dirname($full_name);
// 获取文件绝对路径
$filedir = dirname(__FILE__).$filedir;
// 创建文件
loopMakeDir($filedir);
// 保存文件
downfile($linkUrl,dirname(__FILE__).$full_name);
// 深层创建文件结构
function loopMakeDir($dir, $mode = 0777)
{
if (is_dir($dir)) {
return true;
} else if (!is_dir(dirname($dir)) && !call_user_func(__FUNCTION__, dirname($dir), $mode)) {
return false;
}
return mkdir($dir, $mode);
}
// return;
function downfile($url,$filename){
// 下载https文件的配置options
$arrContextOptions = array(
"ssl"=>array(
"verify_peer"=>false,
"verify_peer_name"=>false,
),
);
try {
// 加载文件
$img = @file_get_contents("compress.zlib://".$url, false, stream_context_create($arrContextOptions));
if($img !== false){
// 将文件下载到本地
$data = @file_put_contents($filename,$img);
}
}
catch (Exception $e) {
echo $e->getMessage();
}
}