Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
David
Člen
Avatar
David:20.1.2017 19:16

Zdravím, mám asi triviální dotaz,ale i přesto,že jsem si na toto téma přečetl dost článku,tak je mi velmi nejasné.

V PHP si zkouším hrát nějaký rok a pro přístup k DB jsem používal klasické mysqli funkce,pak jsem se dostal k PDO a ted momentálně se snažím pochopit možnosti připojení přes různé "knihovny". Můj dotaz se tedy bude skládat z různých situací,které mohou nastat.

  1. V PHP (Bez frameworku) použiji strukturovaný kód s možnosti připojeni k DB např (MySql). Co jsem se dočetl, tak pro komunikaci s DB můžu použit uvedené PDO,NOTORM (pokud jsem to dobře pochopil,tak využívá PDO),DIBI.
  2. V PHP (Bez frameworku) použiju objektový přístup a chci komunikovat s DB (MySql). Co použít ? DIBI,Doctrine,PDO ? Potřebuju tedy vrstvu,která mi převede objekty na řádky.
  3. V PHP (S frameworkem) objektově s DB (mysql). Můžu použít Doctrine,Dibi atd.

Moc nechápu rozdíly mezi použitím DIBI,Doctrine,No­tORM a PDO.

Díky za vysvětlení tohoto guláše.

 
Odpovědět
20.1.2017 19:16
Avatar
Filip Šedivý:22.1.2017 15:49
  • PDO je ovladač pro přístup k databázi, tak že pomocí něho píšeš SQL - neboli dotazy přímo na databázi
  • DIBI je taky ovladač, ale je to psaný nad MySQLi, PDO,... a mnoho dalšího. Jeho výhodou je že se snaží mít stejnou syntaxi objektů, tedy ať se připojíš na MySQL nebo MSSQL server, tak vždy to bude fungovat. V opačném případě v PDO bys musel upravovat SQL dotazy.
  • Doctrine a NotORM je vyšší dívčí - jedná se o mapování databáze, tedy - ty si vytvoříš OOP databázi, objektovou databázi - a ORM ti na tyto objekty mapuje data. Výhodou je třeba u Doctrine, že ty si pomocí objektů vytvoříš databázi, a pomocí CLI si vygeneruješ celé schéma. Tedy odpadá vymýšlení SQL dotazů a různých blbostí, a můžeš se plně věnovat vývoji aplikaci. Stejně tak, potřebuješ změnit název pole, nebo přidat? Není problém, v objektu dáš další properties a funguješ.
Nahoru Odpovědět
22.1.2017 15:49
Láska je, když si zapamatujete její IP, abyste obešli zpoždění DNS.
Avatar
David
Člen
Avatar
David:24.1.2017 9:35

Díky za jasnou a stručnou odpověd :)

 
Nahoru Odpovědět
24.1.2017 9:35
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.