2009-08-28 6 views

Répondre

12
+0

Mes 2 cents: Doctrine tout le chemin. – dcousineau

+0

Je préfère aussi Doctrine, mais je voudrais sauver ce fil de la balise "religion-guerre" :) – Zed

+0

Definitly Doctrine; d'autant plus que Propel pourrait ne pas être développé activement à l'avenir: http://groups.google.com/group/propel-development/msg/829895b081ec7873?pli=1 –

2

Sans aucun doute aller avec Doctrine.

2

Si vous utilisez PHP 5.3, il existe une implémentation PHP d'ActiveRecord disponible maintenant (link). C'est sur github ainsi que vous voulez regarder ou fourchez-le. J'ai vérifié la source sur github et j'utilise PDO en son cœur pour exécuter les requêtes.

1

Une autre option est phpDataMapper, qui est une implémentation légère du modèle DataMapper.

2

Je n'ai pas utilisé Doctrine ou Propel. Propel a l'air simple et très agréable (peut-être essayer). Doctrine semble avoir beaucoup plus que simplement ActiveRecord ORM. Je suis un grand fan de phpactiverecord (http://www.phpactiverecord.org/). C'est simple, logique et construit pour l'architecture MVC. J'avais utilisé ActiveRecord de CodeIgniter dans le passé, c'est similaire: tout php, très facile à installer une nouvelle connexion, j'aime particulièrement les finders dynamiques, vous permet de mettre le champ du "WHERE" dans la fonction au lieu d'avoir à donner un tableau associatif. Propel pourrait avoir cela aussi, ex:

$book = Book::find_by_title('War and Peace'); 

contre:

$book = Book:find('all', array('conditions' => "title = 'War and Peace'"));