Tach!
$user wäre ein Objekt der Klasse User die dann einen solchen User repräsentiert mit sachen wie:
[eigenschaften]
save() // speichert diesen user in der datenbank
destroy() // löscht den user aus der datenbank
Eine Kuh melkt sich nicht selbst. Oder in deinem Kontext: Nicht das Bier braut sich, sondern du tust es.
Ein Nutzer muss nicht wissen, wie er sich zu persistieren hat. Das schafft nur unnötige Abhängigkeiten zwischen dem User und der Datenbank.
Eine übliche Vorgehensweise ist, dass Daten enthaltende Objekte von einem Datenkontext überwacht werden und man dem eine Speicherauftrag gibt, woraufhin er sich um das Auslesen der zu speichernden Eigenschaften seiner Schäfchen kümmer und sie speichert.
dedlfix.