Хмм, на, про первый пункт что-то не подумал, но глобальные массивы нельзя передавать напрямую в функцию/метод на сколько я помню, в этом случае придётся дублировать POST из глобальной в обычную переменную и уже её передавать вот так:
Спасибо за ваши замечания, чуть позже отмечу решением:
1, Сейчас при поиске в проекте maillogin() находится 2 совпадения, я хочу видеть при поиске только уникальный объект и место где оно вызывается.
2. Модель сейчас ничего не возвращает. Я говорю что можно сделать что бы она вернула просто true (данные) о возврате экземпляров сторонних классов речи не идёт.
3. По поводу new ErrorView($data) ErrorView один, а методов в нём много, на разные типы ошибок, сделав так мне придётся разруливать это всё где? В конструкторе ErrorView?
4. Потому что без return или exit метод продолжит выполнение до конца.
FASis, 1) Сессия не может стартовать дважды, вы можете добавить в неё данные
2) У вас архитектурная ошибка, первый раз надо оставит ну пусть $_SESSION['user'], а второ раз уже делать $_SESSION['user_id'] = 444;