当获取Doctrine 2实体字段为null时,因为它在数据库中包含" - " ( 8212;)
字段是:
/*
* @var string
*
* @ORM'Column(name="question", type="text", nullable=false)
*
* @Groups({"list", "details", "exercise_details"})
* @Type("string")
*/
private $question;
获取是用下面的代码完成的:
$exercise = $exerciseRepo->findOneBy(array('id' => $id));
$this->response(json_decode($this->serializer->serialize($exercise, 'json', 'JMS'Serializer'SerializationContext::create()->setGroups(array('exercise_details', 'details')));
当我从数据库中删除字符—
时,文本显示正确。问题可能是什么?如何解决?
我知道这是一个老问题,但我刚刚有同样的问题,我已经解决了它添加这一行:
charset: UTF8
在config.ymldbal:
driver: %database_driver%
host: %database_host%
port: %database_port%
dbname: %database_name%
user: %database_user%
password: %database_password%
charset: UTF8