从mysql DB中选择后如何向对象添加新属性

时间:2019-02-12 13:12:41

标签: php mysql

iam用纯PHP编写的语句从mysql数据库中读取一些数据。 之后,我想为每个数据集添加一个新属性和一个值到该属性。

例如,当我拥有这种数据时,在读取mysql之后:

[{ 
    firstname: "John",lastname:"Peter",department:"wsed4", branch:"2" 
},
{
    firstname: "Daniel",lastname:"McGregor",department:"asdf2",branch:"2" 
}]

我想将值为 2 的属性分支添加到数据中。因此可能看起来像这样。

$stmt = $db->prepare("SELECT firstname,lastname, department from person WHERE companyid = ?");
$stmt->bind_param("i",$companyid);
$stmt->execute();
$result = $stmt->get_result();

这是用于从mysql数据库中读取数据的php代码。

  $persons = $result->fetch_assoc();

  foreach($persons as $person){    
      $persObj = $person->fetch_object(); 
      $persObj->branch = "2";
  }

现在,我想遍历结果并将新属性 branch 添加到每个数据集中,并为其添加值2。

我以不同的方式尝试了它,但是没有用。 这是数百万次尝试的示例:))

{{1}}

总有一个错误。 我需要前端中json中的数据。 请帮助如何在mysql select结果中添加新属性。

2 个答案:

答案 0 :(得分:1)

如果您希望始终将 2作为分支,则可以构建查询,例如

$stmt = $db->prepare("SELECT firstname, lastname, department, 2 AS branch from person WHERE companyid = ?");
//                                                            ^---------^---- Check this

答案 1 :(得分:1)

您正在获取关联数组

while($persons = $result->fetch_assoc()){
  $persons['branch'] = 2;
}