如何使用PHP将图像导出到本地文件夹

时间:2016-05-28 10:15:50

标签: php

如何使用PHP将图像导出到本地文件夹,我的所有数据都在服务器系统中。我如何在客户端系统中导出上传的图像?请给我解决方案。我正在使用Php。谢谢大家。

2 个答案:

答案 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');