我在Symfony 3项目上使用JMS序列化程序。
当我读取具有blob值的实体时,json返回:Resource id #xxx
默认情况下不支持blob类型吗?我该如何使用它?
答案 0 :(得分:2)
我通过让getter始终为您解包资源并强制JMS Serialiser使用该getter而不是default - reflection来解决这个问题。
/**
* @ORM\Column(type="blob")
* @Serializer\Type("string")
* @Serializer\AccessType("public_method")
*/
private $payload;
public function getPayload(): string
{
if (\is_resource($this->payload)) {
return stream_get_contents($this->payload);
}
return $this->payload;
}
public function setPayload(string $payload): void
{
$this->payload = $payload;
}
答案 1 :(得分:0)
使用:<?= get_resource_type($data_example) ?>
if return type = stream
你可以使用<?php stream_get_contents($data_example); ?>