private $name;
private $lastname;
private $nickname;
private $email;
private function getArray() {
$array =
}
$loginaction = [
'nickname' => $nickname,
'password' => $password,
];
$sql = "SELECT id, nickname, avatar, balance FROM `lk_user` WHERE nickname = :nickname AND password = :password LIMIT 1";
$result = $this->db->row($sql, $loginaction);
Как тут собрать массив, но не со всеми переменнымиок, по какому принципу собираетесь отбирать переменные которые действительно нужны?
private function getArray($fieldsSet){ // $fieldsSet = массив нужных ключей, например array('name','password');
$ret = array();
foreach($this->fields as $key=>$val){
if(in_array($key,$fieldsSet)){
$ret["$key"] = $val;
}
}
}
<?php
class Hey {
private $name;
private $lastname;
private $nickname;
private $email;
private function getArray($nickname, $password) {
$loginaction = [
'nickname' => $nickname,
'password' => $password, // где брать пароль, как параметры метода? Тогда я добавил туда же и nickname
];
$sql = "SELECT * FROM `lk_user` WHERE nickname = :nickname AND password = :password LIMIT 1";
$result = $this->db->row($sql, $loginaction); // какой формат переменной result?
if ($result) {
// какие данные из БД надо вернуть в массив?
//если result - это объект, то присвоить значения можно так (это можно и пропустить, не ясна задача полностью):
$this->name = $result->name;
$this->lastname = $result->lastname;
$this->nickname = $result->nickname;
$this->email = $result->email;
// вернуть надо именно массив? ОК:
$res = [];
$res['name'] = $this->name;
$res['lastname'] = $this->lastname;
$res['nickname'] = $this->nickname;
$res['email'] = $this->email;
return $res;
} else {
return false;
}
}
}