sql >> Databáze >  >> RDS >> Mysql

Nastavení objektu vráceného z PDO v jeho vlastní třídě

Pokud chcete načíst nový objekt dané třídy, použijete PDO::FETCH_CLASS . Pokud však chcete zapsat hodnoty vlastností do existujícího objektu které již máte, použijete PDO::FETCH_INTO , asi takhle:

 $sth->setFetchMode(PDO::FETCH_INTO, $this);
 $sth->execute();
 $sth->fetch();

Pamatujte, že vlastnosti, do kterých chcete zapisovat, musí být veřejně přístupné, buď přímo, nebo prostřednictvím __set() magická metoda.

Měli byste však pečlivě zvážit odpověď @Truth. Není dobré mít stejnou třídu (tím méně stejný objekt !) odpovídat za přístup k databázi i za reprezentaci záznamu. Mít jednu třídu odpovědnou za správu autorizačních záznamů a druhou za samotné záznamy.



  1. Monitorování předpokládané životnosti stránky na serveru SQL

  2. pomocí mysql regex_replace s regulárním výrazem

  3. Jak uložit pythonský slovník do mysql DB prostřednictvím pythonu

  4. Pole Jooq LocalDateTime používají systémové časové pásmo místo časového pásma relace