PHP属性的问题是一个数组

时间:2015-04-08 00:53:32

标签: php

调用下面的方法时出现“Array to string conversion”错误。错误行是方法中的唯一行(具有数据库查询的行)。

public function setStatus($status) {
    $this->mysqli->query("UPDATE projects SET status='$status' WHERE id='$this->data[id]' LIMIT 1");
}

如果我稍微修改方法,它可以正常工作:

public function setStatus($status) {
    $id = $this->data['id'];
    $this->mysqli->query("UPDATE projects SET status='$status' WHERE id='$id' LIMIT 1");
}

我做错了什么? 以下是有关“数据”属性的更多信息:

    $result = $this->mysqli->query("SELECT * FROM projects WHERE id='123' LIMIT 1");
    $this->data = $result->fetch_assoc();

1 个答案:

答案 0 :(得分:3)

public function setStatus($status) {
    $this->mysqli->query("UPDATE projects SET status='$status' WHERE id='$this->data[id]' LIMIT 1");
}

public function setStatus($status) {
    $this->mysqli->query("UPDATE projects SET status='$status' WHERE id='".$this->data['id']."' LIMIT 1");
}

在id字段注意我改变了它。