@mrFlyer

Как вызвать и вернуть результат цепочки в конструкторе?

Здравствуйте.

Разбираю пошагово ActiveRecord и не могу понять как работает данный принцип. Если я в конструкторе возвращаю цепочку, то данных нет. Если извне тяну то все работает.

Как я понимаю проблема в том, что конструктор не может ничего возвращать и нужно вызвать эту цепочку вне конструктора. Не могу понять как это делает ActiveRecord, там уже заплутал в коде их.

Направьте пожалуйста в правильное направление меня.

class Member{
    static function find($params=null){
        return new Query(get_called_class(),$params);
    }
}


class Query{
    public function __construct($className, $params = []){
        if (is_numeric($params)) {
            $this->where("id = ?", $params)->one();
        }
    }
    /* where select etc... */
}

$member =   Member::find(1); // Нет списка из базы
$member =   Member::find()->where("id = ?", 1)->one();  // Есть список из базы
  • Вопрос задан
  • 171 просмотр
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы