Forum » Izdelava spletišč » [Zend Framework, PHP5] Zend_Db
[Zend Framework, PHP5] Zend_Db
drola ::
V vodiču za Zend Framework na phparch.com piše, da je uporabljen neposreden dostop do baze (torej sqlite_* oz. v mojem primeru bi bilo mysql_*), ker naj bi bile komponente v Zend_Db še dokaj nestabilne v času pisanja vodiča (Zend Framework PR 0.1.2), vendar pa je zdaj Zend Framework že v različici 0.1.5. Se splača uporabit Zend_Db v neki resnejši aplikaciji ali pa zaenkrat raje uporabim AdoDB ali kaj podobnega?
https://drola.si
Looooooka ::
jst uporablam zend studio...njihovga db accessa nism se nikol uporabu v vseh projektih uporablam adodb...ze sam zarad tega ker je mozno bazo s tem na mssql in mysql uporablat ce stranki pase.Plus zaenkrat ni nekih vecjih lapsusov kar se tice dostopanja in hitrosti.Pa se caching ma kjer ga rabs.
tko da u can't go wrong with adodb.
tko da u can't go wrong with adodb.
drola ::
Nisem prepričan, da govoriva o isti stvari. Jaz govorim o komponenti Zend_Db iz Zend Frameworka.
V zgoraj omenjenem vodiču pa na 5. strani piše tole:
Zanima pa me, kaj dejansko pomeni, da so komponente relativno nestabilne.
Sicer mi precej bolj diši uporaba Zend_Db, kot pa kakšnega drugega classa, ker bi ga bilo potrebno precej prirejat, da bi bila koda nekako v slogu druge kode in Zend Frameworka.
Ima kdo kakšne konkretnejše podatke?
V zgoraj omenjenem vodiču pa na 5. strani piše tole:
Because the database components of the Zend Framework are still relatively unstable, and because I want this demo to be easy to work with, I use a simple class that uses SQLite for storing and retrieving news entries and comments
Zanima pa me, kaj dejansko pomeni, da so komponente relativno nestabilne.
Sicer mi precej bolj diši uporaba Zend_Db, kot pa kakšnega drugega classa, ker bi ga bilo potrebno precej prirejat, da bi bila koda nekako v slogu druge kode in Zend Frameworka.
Ima kdo kakšne konkretnejše podatke?
https://drola.si
rokpok ::
Glede na to, da je Zend framework komaj v 0.1.5 preview verziji, brez problema lahko rečeš, da so vse komponente relativno nestabilne (ker gre za preview verzijo). Kar pa se tiče mojih izkušenj pa lahko rečem, da nisem imel težav pri uporabi Zend_Db komponente in je delovala brez težav. Osebno ne vidim razloga, zakaj ne bi uporabljal še Zend_Db komponente, če uporabljaš vse ostale.
Rad bi bil pingvin.
drola ::
V redu, torej bom uporabil Zend_Db.
Kolikor sem prebral nekaj strani glede tega v manualu, sem videl, da je zadeva bolj za abstrakcijo baze.
Ima mogoče še kaj v stilu preslikave tabele v razred ali pa je to potrebno storiti ročno?
Kolikor sem prebral nekaj strani glede tega v manualu, sem videl, da je zadeva bolj za abstrakcijo baze.
Ima mogoče še kaj v stilu preslikave tabele v razred ali pa je to potrebno storiti ročno?
https://drola.si
rokpok ::
Zend_db komponenta vključuje tudi Zend_db_table, ki je implementacija table data gateway-a.
Rad bi bil pingvin.
[MYTiX] ::
Kaj pa Adodb active record? Temelji na Adodb. Ideja je kopirana z Zend_Db_Table, mal izboljšana in deluje tudi na php 4. Meni je bolj všeč. Vsaj zaenkrat.
podpis
Zgodovina sprememb…
- spremenil: [MYTiX] ()
drola ::
rokpok: Najlepša hvala za odgovore.
[MYTiX]: podpora za PHP4 v mojem primeru predstavlja -, ker hočem imeti čimčistejšo kodo in koda v PHP4 stilu bo uporabljena le, če bo res nujno.
[MYTiX]: podpora za PHP4 v mojem primeru predstavlja -, ker hočem imeti čimčistejšo kodo in koda v PHP4 stilu bo uporabljena le, če bo res nujno.
https://drola.si
rokpok ::
[MYTiX]: Adodb active record ni kopija Zend_db_table ampak Zend_db_DataObject-a, ki pa so ga žal odstranili iz knjižice modulov.
Rad bi bil pingvin.
[MYTiX] ::
Ja zgleda da res. Sem vedu da je kopija, na hitro pogledu Zend_db_table in se mi je zdela podobna reč. Zdej ko sem prebral na strani adodb je res kopija dataobjecta. Sej princip je podoben, vsaj kolkor sem na hitro pregledal.
podpis
rokpok ::
Razlika med Zend_db_table in Adodb active record je kar velika. Zend_db_table je implementacija Table Gateway-a, kar pomeni da instanca tega razreda predstavlja relacijsko tabelo. Adodb active record pa je implementacija Active Record-a; instanca razreda predstavlja posamezno vrstico v relacijski tabeli.
Rad bi bil pingvin.
rokpok ::
Verjetno te zanima, ali Zend_db omogoča delo z večimi tabelami naenkrat (primer: hiša ima več stanovalcev...)? Odgovor je žal negativen, ker Zend framework ne omogoča pravega Object Relational Mappinga (ORM). Zend_db_table je samo abstraktni razred, ki ti omogoča, da delaš poizvedbe nad določeno tabelo. Prednost uporabe Zend_db_table:
1) Uporaba normalnih poizvedb:
2) Uporaba Zend_db_table razreda:
Kakorkoli - pravi ORM naj bi bil vgrajen v Zend_db_DataObject ampak (kot sem že rekel) so zadevo opustili.
1) Uporaba normalnih poizvedb:
$result = $db -> query ('SELECT * FROM users');
2) Uporaba Zend_db_table razreda:
class Users extends Zend_db_table {} $result = Users -> FindAll ();
Kakorkoli - pravi ORM naj bi bil vgrajen v Zend_db_DataObject ampak (kot sem že rekel) so zadevo opustili.
Rad bi bil pingvin.
drola ::
Ja, ravno to me je zanimalo.
Bi se dalo vseeno kako uporabit Zend_Db_DataObject? Je bil toliko dokončan, da je uporaben in bi ga lahko dobil iz SVNja tako, da bi si checkoutal različico, v kateri je še bil?
Bi se dalo vseeno kako uporabit Zend_Db_DataObject? Je bil toliko dokončan, da je uporaben in bi ga lahko dobil iz SVNja tako, da bi si checkoutal različico, v kateri je še bil?
https://drola.si
rokpok ::
Močno dvomim, da so zadevo razvili tako daleč, da bi bila primerna za širšo uporabo. Drugače ne vidim razloga, zakaj je nebi vključili v Zend Framework.
Rad bi bil pingvin.
drola ::
Torej bi bila potem najboljša možnost, da sam napišem modele, Zend_Db pa uporabim le za abstrakcijo baze.
https://drola.si
rokpok ::
Nekako tako ja. PHP framework, ki ima (za moje pojme) odlično implementirane modele, je CakePHP. Tako, da si lahko malo pogledaš. Edino kar implementaciji manjka je kakšna PHP5 podpora v stilu __get () in __set ().
Rad bi bil pingvin.
Zgodovina sprememb…
- spremenil: rokpok ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | FrameworkOddelek: Izdelava spletišč | 2579 (1119) | techfreak :) |
» | [PHP] Kako ugotoviti kaj je $thisOddelek: Programiranje | 725 (589) | alexa-lol |
» | Zend Framework in Dwoo template engineOddelek: Izdelava spletišč | 1539 (1303) | BigWhale |
» | [PHP] Zend engine?Oddelek: Programiranje | 1682 (1527) | Gandalfar |
» | Glavni PHP razvijalec dal odpovedOddelek: Novice / --Nerazporejeno-- | 6649 (4605) | darkolord |