Présentation

Pry est un framework qui peut être utilisé comme un simple ensemble de librairie ou comme un framework MVC.
Pour le détails de chaque composant utilisez le menu ci contre, pour l'initialisation MVC voir ci dessous

Initialisation MVC

Télécharger une application de démo

1- Structure de base

Commencez par créer un dossier qui servira de racine pour votre application. Dans ce dossier créer un dossier "pub" qui servira à déposer tous les fichiers publics (index , image , css, js ...). Toujours à la racine , créer un dossier "includes" qui contiendras les sous dossiers suivants :

  • config
  • controllers
  • models
  • view
Ce qui au final donne quelque chose comme ceci :
Note : Cette structure est seulement conseillée , vous pouvez organisez vos dossiers comme bon vous semble.

2- Vhost

Une fois la structure générale du projet mise en place il faut créer un vhost qui pointera directement dans le dossier "pub" crée auparavant :
Encore une fois l'utilisation d'un vhost n'est pas indispensable mais permet de clairement séparer les documents publics des fichiers n'ayants pas besoin d'être accessibles depuis le web. Dans le cas ou vous n'utilisez pas de vhost il sera plus simple de déplacer l'index.php à la racine du dossier de l'application.

3- Index.php (bootstrap) & htaccess

Créer dans "pub" un htaccess qui va rediriger les requêtes sur l'index dans un paramètre url : Toujours dans le dossier "pub" créez maintenant un index.php qui va initialiser le framework :

4- Fichier de config

Si vous lancez votre application dans l'état vous aurez des erreurs puisqu'il manque encore des fichiers. Dans "includes/config" créez un fichier de config "config.ini" avec comme contenu minimal : La section [dev] correspond au mode de config défini au tout début de l'index. On peut ainsi définir plusieurs mode de configuration. Il est également possible d'implémenter de l'héritage avec la synthaxe [nouvelleSection:sectionMere]. Exemple de fichier plus complet :

5- Controllers & vues

Par défaut le framework attends à minima le controller index. Créer donc dans "includes/controllers/" le fichier index.php avec pour contenu : Le controller va charger la vue index , il faut donc créer le fichier "index.html" dans "includes/view/index". Le framework utilise également le controller "errorController" par défaut il faut donc le créer sur le même model que indexController.

6- Test

A ce stade vous devriez être en mesure de lancer voter application

7- BDD / Authentification / Session ...

Le bootstrap proposé est relativement simple. Vous pourrez par exempl avoir besoin d'initialiser une connexion à une bdd et la rendre disponible dans toute l'application. Un exemple utilisant Zend_Db intégré au framework :

8- Url et paramètre

Les url en mode MVC fonctionne comme ceci : http://monsite.com/nomController/nomAction
Par exemple l'url http://site.com/article/lire fera appel au controller articleController et à sa méthode lire()

Pour passer des paramètres dans une url il faut utiliser la synthaxe suivante :
http://site.com/nomController/nomAction/nomParam/valeur/nomParam2/valeur
Par exemple : http://site.com/article/lire/id/15/page/2