Différences entre versions de « PHP »
Sauter à la navigation
Sauter à la recherche
Ligne 41 : | Ligne 41 : | ||
Dépend d'une des abstraction ci-dessus: | Dépend d'une des abstraction ci-dessus: | ||
− | * [http://pear.php.net/package/DB_Table DB_Table]: non-object, intégration avec QuickForm et validation des update/insert, description via une classe et des tableaux ($cols, $idx, $sql...); utilise PEAR::DB | + | * [http://pear.php.net/package/DB_Table DB_Table]: non-object, intégration avec QuickForm et validation des update/insert, description via une classe et des tableaux ($cols, $idx, $sql...); utilise PEAR::DB (licence PHP); LGPL |
* [http://propel.phpdb.org/ Propel]: description en XML, relations inter-classes, relations N-M possibles mais pas encore propres; possibilité d'utiliser directement SQL si besoin; utilise Creole | * [http://propel.phpdb.org/ Propel]: description en XML, relations inter-classes, relations N-M possibles mais pas encore propres; possibilité d'utiliser directement SQL si besoin; utilise Creole | ||
* [http://www.appelsiini.net/~tuupola/php/DB_DataContainer/ DB_DataContainer]: mapping objet simpliste, pas de relation inter-tables; description via la classe PHP; nécessite un champ 'id'. | * [http://www.appelsiini.net/~tuupola/php/DB_DataContainer/ DB_DataContainer]: mapping objet simpliste, pas de relation inter-tables; description via la classe PHP; nécessite un champ 'id'. | ||
* [http://pear.php.net/package/DB_DataObject DB_DataObject]: fichier de description .ini; liens entre classes; à essayer; licence PHP | * [http://pear.php.net/package/DB_DataObject DB_DataObject]: fichier de description .ini; liens entre classes; à essayer; licence PHP |
Version du 9 décembre 2006 à 14:10
Dernières versions de la documentation officielle de PHP, avant qu'elle ne devienne non-libre:
- Documentation for PHP3
- Documentation for PHP4 and PHP3 (snapshot 2002)
Dernière version libre de la documentation PHP
Précisons que l'Open Publication License (OPL) est une licence libre uniquement si aucune option n'est utilisée (notamment, l'interdiction des travaux dérivés sans consentement des détenteurs des droits).
La dernière version date de 2003.
Avec cvs2cl --utc
, j'obtiens le ChangeLog suivant:
2003-05-02 14:12 goba * en/bookinfo.xml: And now: upgrading to the new license
La dernière version libre est donc:
cvs -d :pserver:cvsread@cvs.php.net:/repository login # pass: phpfi cvs -d :pserver:cvsread@cvs.php.net:/repository checkout -D "2003-05-02 14:12:58Z" phpdocs
Tests unitaires avec PHP
- SimpleTest
- PHPUnit
- phpt (tutorial, apparement l'outil est intégré à pear?) - apparemment plus simple/rapide
Voir également WWW::Mechanize (Mech) pour tester le programme de manière externe par son interface web (en Perl). Pour une solution en PHP, voir éventuellement la bibliothèque curl, qui ne sait cependant pas analyser le HTML reçu.
Abstraction de la base de données
- MDB2: successeur de PEAR::DB, licence mBSD
- Creole: PHP5 seulement; licence LGPL
- AdoDB: utilisé par TikiWiki, Xaraya, eGroupWare; license mBSD
Simplification de l'accès à la base
Dépend d'une des abstraction ci-dessus:
- DB_Table: non-object, intégration avec QuickForm et validation des update/insert, description via une classe et des tableaux ($cols, $idx, $sql...); utilise PEAR::DB (licence PHP); LGPL
- Propel: description en XML, relations inter-classes, relations N-M possibles mais pas encore propres; possibilité d'utiliser directement SQL si besoin; utilise Creole
- DB_DataContainer: mapping objet simpliste, pas de relation inter-tables; description via la classe PHP; nécessite un champ 'id'.
- DB_DataObject: fichier de description .ini; liens entre classes; à essayer; licence PHP