小编Che*_*ell的帖子

将新数据附加到对象

我试图将新数据附加到我正在为AMchart创建的stdClass对象

我正在从DB中返回我想要的所有行,然后创建一个新对象并循环遍历返回的数组,但不是将我想要的内容附加到现有对象的末尾,它只是被覆盖.PHP对象没有append或push方法,那么你如何实现这一目标呢?

这是我的代码的样子.我错过了一些简单的事吗?

    $sql = 'SELECT 
            count(*) as clients,
            STR_TO_DATE(Appt_date, \'%m/%d/%Y\') AS date,
            SUM(wait_time) as total_wait_time
            FROM tb_by_client
            WHERE status = @qualifier
            GROUP BY Appt_date';

    $rows = $db->fetchAll($sql);
    $chartObject = new stdClass();
    foreach($rows as $row){
        $row->average = round($row->total_wait_time / $row->clients);
        $chartObject->date = $row->date;
        $chartObject->average = $row->average;
    }
    $chartArray[] = $chartObject;
    return json_encode($chartArray);
Run Code Online (Sandbox Code Playgroud)

所以不要得到看起来像这样的东西

[{"date":"2018-10-01","average":12},{"date":"2018-10-02","average":-33},{"date":"2018-10-04","average":23},{"date":"2018-10-05","average":6}]
Run Code Online (Sandbox Code Playgroud)

我回来了一个

[{"date":"2018-10-01","average":12}]
Run Code Online (Sandbox Code Playgroud)

因为每个循环都会覆盖最后一个键和值

你怎么追加?

php json object

0
推荐指数
1
解决办法
110
查看次数

标签 统计

json ×1

object ×1

php ×1