如何使用PHP将图像导出到本地文件夹,我的所有数据都在服务器系统中。我如何在客户端系统中导出上传的图像?请给我解决方案。我正在使用Php。谢谢大家。
答案 0 :(得分:0)
要么保留图像的压缩文件。并直接请求网址。没有php的作用,如果images文件夹是静态的。 如果图像文件夹不是静态的,并且添加/删除图像,则可以使用php zip库创建zip。这将是在客户机上下载多个图像的最佳选择。
您可以使用以下代码。以下代码来自How to zip a whole folder using PHP
处的另一个堆栈溢出帖子// Get real path for our folder
$rootPath = realpath('folder-to-zip');
// Initialize archive object
$zip = new ZipArchive();
$zip->open('file.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);
// Create recursive directory iterator
/** @var SplFileInfo[] $files */
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($rootPath),
RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($files as $name => $file)
{
// Skip directories (they would be added automatically)
if (!$file->isDir())
{
// Get real and relative path for current file
$filePath = $file->getRealPath();
$relativePath = substr($filePath, strlen($rootPath) + 1);
// Add current file to archive
$zip->addFile($filePath, $relativePath);
}
}
// Zip archive will be created only after closing object
$zip->close();
答案 1 :(得分:0)
试试吧。参考:https://stackoverflow.com/a/724564/4669350
function save_image($inPath,$outPath)
{ //Download images from remote server
$in= fopen($inPath, "rb");
$out= fopen($outPath, "wb");
while ($chunk = fread($in,8192))
{
fwrite($out, $chunk, 8192);
}
fclose($in);
fclose($out);
}
save_image('http://www.someimagesite.com/img.jpg','image.jpg');