php - Yii2 - 想象一下在没有临时文件的情况下创建新图像

标签 php yii2 php-imagine

我是 Imagine 库的新手(在 yii2 中也是如此),我想知道是否有一种方法可以编辑新上传的图像而不需要存储原始文件。

目前我做这样的事情:

// store original image (it will not be used anymore, so we will delete that later)
$myImage->saveAs($imageTempPath);

// save new imagine thumb
Image::thumbnail($imageTempPath, 120, 120)
    ->save(Yii::getAlias('uploads/test-photo.jpg'), ['quality' => 80]);

// delete original image...

总结一下:有没有办法跳过保存原始临时图像的步骤?

最佳答案

您应该简单地使用 PHP 创建的临时文件:

Image::thumbnail($myImage->tempName, 120, 120)
    ->save(Yii::getAlias('uploads/test-photo.jpg'), ['quality' => 80]);

了解更多:http://www.yiiframework.com/doc-2.0/yii-web-uploadedfile.html#$tempName-detail

关于php - Yii2 - 想象一下在没有临时文件的情况下创建新图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32678103/

相关文章:

javascript - 由于 URL 意外,我收到 400 错误

PHP 数组与不同类型的键合并

gridview - yii2相关数据搜索中与id冲突

yii2 - 使用关系 yii2 访问表字段

php - 如何用想象库填充缩略图

PHP 引用 `$this`

php - cURL 和外部 Tor 中继

php - 如何调试图像创建

php - Laravel - 未安装 Imagick

php - 如何使用 PHP 更新数据库中员工的电话号码