我正试图在字段'action'中从我的数据库中提取一个值,它是一个JSON字符串但是我现在将它存储为单个值,这就是:
'command'=>'get','target'=>'location'
但是,当我从数据库中提取它时,它包含了我不想要的字段名称,请参阅下文:
[{"action":"'command'=>'get','target'=>'location'"}]
我的代码在这里:
$em = $this->getDoctrine()->getManager();
$query = $em->createQueryBuilder();
$q = $query->select('z.action')
->from('AppBundle:ZeusUsers', 'z')
->where('z.id = ?1')
->setParameter(1, $id)
->getQuery();
$action = $q->getResult();
return new Response(json_encode($action));
所以我只需要知道如何获取不包含字段名称的字段值?
答案 0 :(得分:1)
尝试此方法 getSingleScalarResult()
但请记住,如果它找不到任何东西,它将抛出异常
答案 1 :(得分:0)
您希望使用getSingleResult()
代替getResult()
来获取您的字段值。如果没有找到结果或者有多个结果(setMaxResults(1)
将补救此部分),它将抛出异常。
https://github.com/doctrine/doctrine2/blob/master/lib/Doctrine/ORM/AbstractQuery.php#L802