在调用下面的方法时,我得到一个"数组到字符串的转换"错误。错误的行是方法中唯一的一行(带有数据库查询的行)。
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();
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字段我更改了它。