如何仅在PHP中使用键在json中对数组进行编码

如何仅在PHP中使用键在json中对数组进行编码,php,json,Php,Json,我从PHP数据库中获取了一行,其中包含两个属性,即email_id和first_name。现在我使用json_encode$data,128对这些数据进行编码。它正在将数据转换为json格式。我得到的数组格式如下 { "0": "example@example.com", "1": "Sahil Manchanda", "email_id": "example@example.com", "first_name": "Sahil Manchanda" } 但我只

我从PHP数据库中获取了一行,其中包含两个属性,即email_id和first_name。现在我使用json_encode$data,128对这些数据进行编码。它正在将数据转换为json格式。我得到的数组格式如下

{
    "0": "example@example.com",
    "1": "Sahil Manchanda",
    "email_id": "example@example.com",
    "first_name": "Sahil Manchanda"
}
但我只想

{
       "email_id": "example@example.com",
        "first_name": "Sahil Manchanda"
}
我获取数据的php代码是

 $query = $this->db->prepare("SELECT  'email_id','first_name'  FROM `customer` WHERE `username`=?");
        $query->bindValue(1, $username); 
        try {
            $query->execute();
            $data = $query->fetch();
            return $data;
        } catch (PDOException $e) {
            die($e->getMessage());
        }
您能告诉我怎么做吗?

根据您发布的PHP代码,您最好使用以下方法获取数据:

$query->fetch(PDO::FETCH_ASSOC));
或者,您可以简单地执行以下操作:

$query->fetch_object();
获取对象以如下方式获取数据:FETCH_OBJ


确保查看“获取样式”部分以了解更多信息。

您需要执行“获取关联”,而不是“获取数组”。提供您的php代码,问题就在这里。@Darren所以我应该用fetch_assoc替换fetch?!注意:在第42行的C:\xampp\htdocs\app\core\classes\Customer.class.php中使用未定义的常量FETCH_ASSOC-假定“FETCH_ASSOC”,警告:PDOStatement::FETCH预期参数1很长,第42行C:\xampp\htdocs\app\core\classes\Customer.class.php中给出的字符串不要用逗号包装FETCH_ASSOC“我发现了错误,请用$query->fetchPDO::FETCH_ASSOC更新您的答案;抱歉,这是漫长的一天,我已经喝得太多了哈哈