Imagick и GridFS - PullRequest
       42

Imagick и GridFS

4 голосов
/ 04 января 2012

У меня есть изображения, хранящиеся в GridFS для MongoDB. Когда я вытаскиваю изображение, я хочу изменить его размер и затем сохранить его в базе данных. Я попробовал это:

$image = $grid_collection ->findOne(array('_id' => new MongoID($id)));
new Imagick($image -> getBytes());

Но это приводит к ошибке в Imagick. Теперь я могу записать его в файл временно на диск, и Imagick прочитает файл, но это кажется долгим путем. Любые предложения о лучшем способе сделать это?

Ответы [ 2 ]

2 голосов
/ 04 января 2012

Да

$data = $grid->findOne(array('_id' => new MongoID($id)));

$img = new Imagick();
$img->readImageBlob($data->getBytes());
0 голосов
/ 04 января 2012

Вы не можете хранить изображения в спецификации.Что вы подразумеваете под

У меня есть изображения, хранящиеся в GridFS

GridFS - это спецификация.

...