使用简单的JSON数组进行学说查询结果



在我的数据库中,我有一个名为Graphique的实体。这是:

的模式
class Graphique
{
    /**
     * @var integer
     *
     * @ORMColumn(name="id", type="integer", nullable=false)
     * @ORMId
     * @ORMGeneratedValue(strategy="IDENTITY")
     */
    private $id;
    /**
     * @var decimal
     *
     * @ORMColumn(name="index", type="decimal", precision=9, scale=3, nullable=false)
     */
    private $index;
    /**
     * @var datetime
     *
     * @ORMColumn(name="date", type="datetime", nullable=false)
     */
    private $date;
    /*getters and setters*/

根据我的数据库架构(示例):

,这是索引的一些值
----------------------------------
id    | index    | dateTime      |
----------------------------------
1     | 1700.000 | dateTime datas|
----------------------------------
2     | 1200.000 | dateTime datas|
----------------------------------
3     | 1200.000 | dateTime datas|
----------------------------------
4     | 1304.000 | dateTime datas|
----------------------------------
etc...| etc...   | etc...        |

我将此方法带入控制器:

$em=$this->getDoctrine()->getManager();

$queryIndex = $em->createQuery( 'SELECT g.index
                                    FROM MySpaceMyBundle:Graphique g');
$array = array_map('current', $queryIndex);
$response = new Response();
$data = json_encode($array);
$response->headers->set('Content-Type', 'application/json');
$response->setContent($data);
return $response;

它将其归还给我的JSON响应:

["1700.000","1200.000","1200.000","1304.000","1800.000","2012.000","2048.000","1048.000","3000.000","5421.000"]

,但是我需要有一个简单的数组结果(而不是在上面给您的JSON响应):

[1700.000,1200.000,1200.000,1304.000,1800.000,2012.000,2048.000,1048.000,3000.000,5421.000]

我需要在我的JSON响应中返回一个简单的数组,以便将其显示为HighChart图形的小数点值。

我该如何继续?我已经尝试了一些学说方法,例如->getArrayresult()->getScalarResult()->toArray(),但结果是相同的。我需要使我的查询结果成为一个简单的数组。

json_encode($array, JSON_NUMERIC_CHECK); 

此解决方案应为您提供帮助。

相关内容

  • 没有找到相关文章

最新更新