0

こんにちは、アップロードした画像を 2 つのバージョン (通常とサムネイル) として保存したいです。

これが私が通常に使用しているコードです:

$picture = Upload::save($_FILES['picture']);
// Resize, sharpen, and save the image
Image::factory($picture)->resize(200, NULL)->save();
$profile->profile_picture = basename($picture);

これは機能しますが、小さいバージョンも作成したいと思います$profile->profile_picture_thumb

上記のプロセスを別の変数名で繰り返してみました$picture_thumb = Upload::save($_FILES['picture']);。しかし、それは私にはうまくいきませんでした。

どんな提案でも大歓迎です。

4

1 に答える 1

2

Upload::save() は保存されたファイルへのパスを返すので、そこから新しい Image インスタンスを簡単に作成し、より小さなバージョンの Image を保存するだけです。何かのようなもの:

$picture = Upload::save($_FILES['picture']);
// Resize, sharpen, and save the image
$image = Image::factory($picture)->resize(200, NULL);
$image->save();
$profile->profile_picture = basename($picture);



// Save thumbnail
$thumb_path = dirname($image->file).'/thumb_'.basename($image->file);
Image::factory($picture)->resize(100, NULL)->save($thumb_path); 
$profile->profile_picture_thumb = basename($thumb_path);
于 2012-10-04T17:20:42.877 に答える