Première conférence intéressante : Plein Phar, de Fréderic Hardy.
Je vous livre mes notes en vrac, en espérant que ce soit lisible :
Phar = JAR en Java (archive qui regroupe et éventuellement compresse plusieurs fichiers en un)
Peut être inclus très facilement en PHP :
require "phar://...";
Un fichier Pahr contient:
Utilisation possible de metadonnées (un peu comme les annotations). On peut y mettre n'importe quoi : Auteur, release, version…
Je pense que ça peut être très pertinent de les utiliser pour gérer les versions : si avec un SVN c'est assez simple, le SVN ne fonctionne que dans un seul sens (on connaît la version en amont). Pour un serveur qui déploie souvent, sur des serveurs clients dont il n'est pas maître, prévoir une surcouche des versions par le Phar permet de mettre en place des systèmes de mise à jour automatique... Bref, une piste à creuser.
3 extensions :
- Phar - PharTar - PharZipIl est possible de créer ses propres extensions, mais il vaut mieux utiliser ces 3 principales
On peut monter dans le phar des fichiers externes (mount)
A la création, le stub n’est pas testé. Une fois le phar créé, les erreurs sont difficiles à gérer et opaques.
On peut utiliser des tests unitaires pour :
Varie selon l’environnement.
Phar est compatible avec APC (et ça c'est une bonne chose ^^)
Un phar n’est pas obfuscé ! Il ne faut pas compter dessus pour protéger le code (même s'il n'existe aucune solution ultime, Phar n'en est pas du tout une)
Une bonne idée : il suffit d’utiliser Hudson pour regénerer le Phar à chaque commit
On peut imaginer mettre tous les fichiers du ZF dans un Phar, puis mettre le controller frontal dans le Stub.
Un bon tutoriel (et au passage un bon blog) : http://blog.pascal-martin.fr/post/php-5.3-phar-php-archive
Voici mes notes en vrac. Cette conférence m'a donnée pas mal d'idée, je pense que je vais m'en servir dès lundi. Prochaine étape la prod' ?
© Jean-François Lépine, 2013 - 2024