Php-ben írhatom ugyanabba a Classba az insertData, updateData, deleteData, getData metódusokat?
Mondjuk egy DataHandling classba.
Nem tudom mi a szokás vagy elvárt. Lehet igazából nem is lehet így, mert hibába ütköznék.
DataHandling osztályt nem szokás írni, legalábbis szabványok alapján nem illene. Magát az adatot kéne osztályba foglalni (azaz User osztály például), és azoknak viszont az egész CRUD kezelését nyílván az osztályban kell megvalósítani, és maga az adat privát. Előfordul persze hogy egy meglévő osztály rondán oldja meg, és erre van egy barátságosabb kezelő írva, ezt Wrappernek hívják.
u.i: CRUD = Create Read Update Destroy (azaz amit kértél, létrehoz, szerkeszt, töröl, olvas)
#1 #2 Hmm.
Én ezt még tovább bontanám az MVC alapján.
Csinálnék mondjuk egy Model osztályt. (ebben lenne a save és a delete metódus, ami az adott model-t menteni vagy törölni tudja, meg esetleg egy statikus "find").
A User osztály a Model-ből öröklődne.
A CRUD részt pedig a Controllerbe tenném, jelen esetben a UserController-be.
ezen belül lenne pl a create metódus, ami kb így nézne ki:
public function create()
{
$newUser = new User();
$newUser->name = 'Kis Pista';
$newUser->save();
}
az update ugyanez, csak nem új példányt hozol létre, hanem mondjuk egy meglévőt "nyitsz meg":
public function update(User $user)
{
$oldUser = User::find($user);
$oldUser->name = 'Kis Pista';
$oldUser->save();
}
szóval valahogy így szerintem szebb lenne.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!