Sto cercando un buon ORM (cioè Active Record) che usa l'estensione php PDO come base. Qualche suggerimento?Alcuni ORM con PDO?
risposta
Assolutamente andare con Doctrine.
Un'altra opzione è phpDataMapper, che è un'implementazione leggera del modello DataMapper.
- dottrina (opzionalmente con Symfony) - http://symfony.com/
- Propel (opzionalmente con Symfony) - - http://propelorm.org/
- Zend_Db (opzionalmente con zend) - http://zend.com/
- CakePHP Uso comunemente noti modelli di progettazione come MVC e ORM - - http://cakephp.org/
E per di più ORM http://en.wikipedia.org/wiki/List_of_object-relational_mapping_software
Non ho usato Doctrine o Propel. Propel sembra semplice e molto bello (potrebbe darci una prova) .. La dottrina sembra avere molto di più rispetto ad ActiveRecord ORM. Sono un grande fan di phpactiverecord (http://www.phpactiverecord.org/). È semplice, ha senso e costruito per l'architettura MVC. In passato avevo usato CodeIgniter's ActiveRecord, questo è simile: tutto il php, molto facile da configurare una nuova connessione, mi piace particolarmente i Dynamic finder, fondamentalmente ti permette di mettere il campo del "WHERE" nella funzione invece di dover dare un array associativo. Propel potrebbe avere anche questo, es:
$book = Book::find_by_title('War and Peace');
versus:
$book = Book:find('all', array('conditions' => "title = 'War and Peace'"));
Credo che uno dei migliori e più semplice ORM che utilizza DOP per PHP è
Redbeanphp: http://www.redbeanphp.com/
- 1. Emacs, Come cambiare alcuni colori nella shell M-x?
- 2. Stile commento C++:/* M ... M * /, che cosa significa "M"?
- 3. Come bindValue con% in PDO?
- 4. query parametrica preparata con PDO
- 5. PDO con query "DOVE ... IN"
- 6. Crea database con PDO bindParam
- 7. Come recuperare riga con PDO
- 8. PDO e MySQL "tra"
- 9. Trattare con citazioni aggiunti da PDO :: preparare()
- 10. come si usa mysql_data_seek con PDO?
- 11. @ Html.EditorFor (m => m) sintassi lambda in MVC
- 12. PDO in prestazioni mysql
- 13. Istruzioni preparate PDO - NULL
- 14. Creare stored procedure con PDO in PHP
- 15. Creazione di nuovi DB SQLite con PDO
- 16. Domanda parametrizzata PDO - Riutilizzare segnaposti con nome?
- 17. Come fare la ricerca LIKE con PDO?
- 18. ALTER TABLE con PDO e parametri?
- 19. Domande deepDao profonde con n: m relazioni
- 20. SQL SELECT con m: n relazione
- 21. Autorizzazioni M Android con notifiche push Parse
- 22. E 'possibile implementare `(Applicativo m) => Applicativo (StatoT s m)`?
- 23. PDO bindValue con \ PDO :: PARAM_BOOL causa l'esecuzione dell'istruzione in modo non riuscito
- 24. PDO e MariaDB
- 25. Istanza applicativa per (Monad m, Monoid o) => m o?
- 26. Monad m => a -> [a -> m a] -> m a
- 27. Perché m [1] - m [0] restituisce 3 dove m è una matrice 3x3?
- 28. Problemi PDO lastInsertId, php
- 29. Soppressione degli avvisi PDO
- 30. PHP PDO for Dummies
I miei 2 centesimi: Dottrina fino in fondo. – dcousineau
Preferisco anche Doctrine, ma comunque salverei questo thread dal tag "religious-war" :) – Zed
Definitly Doctrine; soprattutto considerando che Propel potrebbe non essere sviluppata attivamente in futuro: http://groups.google.com/group/propel-development/msg/829895b081ec7873?pli=1 –