1
后我保存图像与学说的数据库,这个映射:PHP学说保存和读取BLOB
/** @Column(type="blob") **/
protected $data;
一切似乎确定。我可以通过这种方式将图像数据保存在数据库中:
$largeImage = new ImageData();
$handle = fopen($imagePath, "r");
$bytes = fread($handle, filesize($imagePath));
$largeImage->setData(base64_encode($bytes));
fclose($handle);
$entityManager->persist($largeImage);
$entityManager->flush();
好的。数据被保存,但是当我需要阅读时,我不能。
var_dump($image->getData());
// outputs resource(1) of type (stream)
所以,我尝试这样做:
$fp = fopen('image.jpg', 'w');
fwrite($fp, base64_decode(stream_get_contents($image->getData())));
fclose($fp);
和文件的内容不是来自一个图像,所以图像不被Windows照片查看器中显示。