My Lib
Présentation
mlib (My Lib) est un ensemble de classes php (javascript/css) qui facilitent certaines tâches fréquentes dans la programmation d'applications php.
Certaines de ces classes, qui aident à construire des interfaces côté client, sont livrées avec des assets (css, javascriptet et images dans un dossier dédié).
Les outils inclus dans mlib sont totalement indépendants, ce qui signifie qu'ils ne nécessitent aucun framework ou autre librairie pour fonctionner (exceptées ceux marqués d'une "*").
mlib est distribuée avec cette structure :
- mlib/
- mlib/ <-- php classes
- assets/
- mlib
La librairie peut facilement être installée selon le framework que vous utilisez ou de la manière dont vous organisez vos applications php.
Les classes php respectent le standard PSR et devraient pouvoir être chargées par un autoloader standard.
Liste des outils
- MConfig : une classe pour charger des fichiers de configuration à mi-chemin entre les fichiers xml et les fichiers de propriétés
- MForm : une classe pour générer des formulaires à partir de fichiers de configuration
- MFormValidator : vérifie simplement tout ce qui est envoyé par un formulaire
- MConsole : tableaux de gestion avec de nombreuses possibilités
- MCache : permet de stocker et de récupérer facilement des objets ou des variables coûteux à calculer, dans des fichiers.
- MLdap * : une surcouche objet pour les fonctions php_ldap natives (nécessite php_ldap)
- MMailer : un mailer php facile à utiliser
- MString : quelques fonctions supplémentaires pour manipuler des chaînes de caractères
- MFileSystem : ajout de quelques opérations manquantes en php sur les répertoires
- MMessenger : un moyen simple d'afficher des messages (infos, avertissements, erreurs ...) à travers les pages
- MTree : pour afficher un arbre
- MAjaxZone : un moyen simple de créer une zone avec un contenu ajax
- MTooltip : pour faire un peu mieux que l'attribut 'title'.
- MCaptcha * : pour ajouter un captcha à un formulaire (nécessite php_gd)
- MLogger : un ensemble de classes pour logger des messages de différentes manières
- MEncoderDecoder * : une classe pour encoder/decoder facilement des chaines de caractères (nécessite openssl)
- MAutoComplete : pour afficher un champ de recherche dynamique
Documentation
mlib est livrée avec un répertoire wwwsamples.
Vous pouvez facilement installer wwwsamples sur un serveur web :
copiez le dossier wwwsamples quelque part sur votre serveur web (généralement sous /var/www/ ou /var/www/html/ sur une distribution linux)
copiez le dossier mlib dans le répertoire wwwsamples
L'exécution de ces exemples dans un navigateur web donne un bon aperçu des capacités de la librairie.
Certaines classes de mlib ont leur propre documentation, d'autres non. Pour ces dernières, la documentation du code devrait être suffisamment claire pour être utilisée.