Hvis du vil hente et nyt objekt af en given klasse, bruger du PDO::FETCH_CLASS
. Hvis du imidlertid vil skrive egenskabsværdier til et eksisterende objekt som du allerede har, bruger du PDO::FETCH_INTO
, sådan:
$sth->setFetchMode(PDO::FETCH_INTO, $this);
$sth->execute();
$sth->fetch();
Bemærk, at de egenskaber, du vil skrive til, skal være offentligt tilgængelige, enten direkte eller gennem en __set()
magisk metode.
Du bør dog nøje overveje @Truths svar. Det er ikke godt design at have den samme klasse (meget mindre det samme objekt). !) være ansvarlig både for databaseadgang og for at repræsentere en post. Hav en klasse ansvarlig for at administrere autorisationsposter og en anden for selve posterne.