abstract class DataMapperAbstract
abstract class MapperAbstract {
abstract public function test( Model $object );
}
class UserMapper extends MapperAbstract {
public function test( User $object ) {
}
}
class Model {
}
class User extends Model {
}
$user_mapper = new UserMapper();
$user = new User();
$user_mapper->test( $user );
Declaration of UserMapper::test(User $object) must be compatible with MapperAbstract::test(Model $object)
getUserByID
(я читал статьи и в этом методе можно реализовать разные методы getUserByEmail
, getRandomUser
и т.д). Также в статьях говорилось, что репозиторий не может создавать объекты, то есть нельзя new User()
в методе getUserByID
.new User
? нужен и должен быть., это геттер, его суть - отдать свойство. А само свойство(а) класса нужно делать закрытыми.
SELECT * FROM users WHERE id = :id
new User
и передавать все поля из базы данных, чтобы экземпляр класса User
содержал соответствующие свойства? Сессия - способ связать данные и пользователя на протяжении заданного времени
на стороне сервера могут храниться произвольные данные, ассоциированные с этим id.
sessions
, где будут поля session_id, user_id. При запросе из куки будет использоваться значение session_id и поиск в базе данных, чтобы найти user_id и потом найти данные пользователя в базе данных используя этот user_id. Это правильно?
ModelInterface $object
Тогда передать в маппер можно любую модель.
Если
то будет та же ошибка
Я выбрал способ проверки к какому классу принадлежит объект
instanceof