Задать вопрос
proudmore
@proudmore

Как сделать конструктор класса правильно?

Здравствуйте. У меня есть класс, который хранит информацию о человеке. И есть конструктор, который принимает на вход id человека, берет информацию из базы и наполняет объект. Нужно добавить возможность создавать объект пользователя, информации о котором в базе нет.
Как это сделать?
public function __construct($id){
		$mysqli = db_connect();
		$req = "SELECT u.ID, u.name, u.age, u.city_id, c.city_name FROM users AS u INNER JOIN cities AS c ON (c.city_id = u.city_id) WHERE u.ID = $id";
		$res = $mysqli->query($req);
		if($res !== false){
			if($res->num_rows == 1 ){
				while($row = $res ->fetch_assoc()){
					$this-> id = $row['ID'];
					$this-> username =  $row['name'];
					$this-> city_name = $row['city_name'];
					$this-> city_id = $row['city_id'];
					$this-> age = $row['age'];
				}
			}  else return false;
		} else return false;
	}
  • Вопрос задан
  • 385 просмотров
Подписаться 1 Оценить Комментировать
Ответ пользователя Александр Аксентьев К ответам на вопрос (2)
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
}  else return false;
    } else return false;

конструкторы ничего не возвращают.

Просто создавайте пустой инстанс объекта, заполняйте данные, потом сохраняйте его в базу.
Ответ написан