LiipImagineBundle を使用して、コントローラーでアップロードした写真のサイズを変更したいと考えています。
$extension = $file->guessExtension();
$newfilename = sha1(uniqid(mt_rand(), true));
$tmp_folder = $this->get('kernel')->getRootDir() . '/../web/uploads/tmp/'; // folder to store unfiltered temp file
$tmp_imagename = $newfilename.'.'.$extension;
$file->move($tmp_folder, $tmp_imagename);
$tmpImagePathRel = '/uploads/tmp/' . $tmp_imagename;
$processedImage = $this->container->get('liip_imagine.data.manager')->find('profilepic', $tmpImagePathRel);
$newimage_string = $this->container->get('liip_imagine.filter.manager')->get($request, 'profilepic', $processedImage, $tmpImagePathRel)->getContent();
unlink($tmp_folder . $tmp_imagename); // eliminate unfiltered temp file.
$perm_folder = $this->get('kernel')->getRootDir() . '/../web/uploads/userimages/';
$perm_imagepath = $perm_folder . $newfilename . '.jpeg';
$f = fopen($perm_imagepathh, 'w');
fwrite($f, $newimage_string);
fclose($f);
これにより、次のエラーが発生します。
Attempted to call method "get" on class "Liip\ImagineBundle\Imagine\Filter\FilterManager" in C:\...\UserController.php line xx. Did you mean to call: "getFilterConfiguration"?
それから私は代わりに試します
$newimage_string = $this->container->get('liip_imagine.filter.manager')->getFilterConfiguration($request, 'profilepic', $processedImage, $tmpImagePathRel);
そしてそれは私をもたらします
Warning: fwrite() expects parameter 2 to be string, object given in C:\..
このタスクを完了するためのドキュメントや例がほとんど見つかりません:(バンドルドキュメントにはかなりがっかりしています://
どんな助けでも本当に感謝しています!
前もって感謝します!