gpt4 book ai didi

php - 交响乐 2 : Display an image mediumblob

转载 作者:行者123 更新时间:2023-11-29 00:10:53 26 4
gpt4 key购买 nike

我正在尝试使用 Symfony 2 显示我的数据库中包含图像的 MEDIUMBLOB 字段,但我做不到...

为此,我创建了自己的 Doctrine 类型。这是代码:

<?php
/**
* Personal type to support MediumBlob
*
* @author Leglopin
*/
namespace MC\UserBundle\Doctrine\Types;

use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\DBALException;
use Doctrine\DBAL\Types\Type;

/**
* Type that maps a PHP object to a mediumblob SQL type.
*/
class MediumBlobType extends Type
{
const MEDIUMBLOB = 'mediumblob';

public function getName()
{
return self::MEDIUMBLOB;
}

public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform)
{
return $platform->getDoctrineTypeMapping('MEDIUMBLOB');
}

public function convertToDatabaseValue($value, AbstractPlatform $platform)
{
return ($value === null) ? null : base64_encode($value);
}

public function convertToPHPValue($value, AbstractPlatform $platform)
{
return ($value === null) ? null : base64_decode($value);
}
}

然后,为了显示图像,我正在这样做:

<img src="data:image/jpeg;base64,{{ photo }}">

在我的 Controller 中 photo 变量是这样定义的:

$photo = base64_encode($user->getPhoto());

但是什么都没有显示

感谢您的帮助!

最佳答案

是的,我在我的 Controller 文件中添加了我的类型:

public function boot()
{
$em = $this->container->get('doctrine.orm.default_entity_manager');

Type::addType('mediumblob', 'MC\UserBundle\Doctrine\Types\MediumBlobType');

$em->getConnection()->getDatabasePlatform()
->registerDoctrineTypeMapping('MEDIUMBLOB', 'mediumblob');
}

关于php - 交响乐 2 : Display an image mediumblob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25148527/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com