У меня есть класс с id, ключевым словом и значением. я выборки данных из таблицы с именем Установка в классе Настройка с помощьюPDO Имена столбцов появляются в классе после fetchAll
if ($stmt->execute()) {
$o = $stmt->fetchAll(PDO::FETCH_CLASS | PDO::FETCH_PROPS_LATE, "Setting", array('id', 'keyword','value'));
}
Когда я смотрю на содержание $ O я вижу следующее
Array ([0] => Setting Object ([id] => id [keyword] => keyword [value] => value [Id] => 1 [Keyword] => AdminMail [Value] => [email protected]))
Мой класс выглядит следующим образом
class Setting {
var $id;
var $keyword;
var $value;
function __construct($id,$ke,$va) {
$this->id = $id;
$this->keyword = $ke;
$this->value = $va;
}
public function getKeyword() {
return $this->keyword;
}
public function getValue() {
return $this->value;
}
}
Ожидает, что $ o-> getValue возвращает [email protected], но возвращает значение.
Может кто-нибудь сказать мне, почему «[id] => id [keyword] => keyword [value] => value" появляется перед фактическим выходом из моей таблицы?
Проблема была в команде fetchAll. Имена в массиве ('id', 'key', 'value') были не такими, как в таблице, в которой я запрашивал. –