Débuter avec CakePHP

CakePHP est un framework open-source pour PHP destiné à faciliter le développement, le déploiement et la maintenance des applications. CakePHP offre de nombreux modèles de conception utiles, tels que le modèle Model-View-Controller (Contrôleur de modèle, voir-contrôleur), utilisés dans d'autres frameworks populaires tels que Rubis sur rails. Le framework CakePHP fournit également une multitude de bibliothèques réutilisables précieuses pour traiter les tâches courantes. Un exemple est "Inflector" (une routine qui prend une chaîne et gère la pluralisation).

Ce guide tentera de vous orienter dans la bonne direction afin que vous puissiez vous familiariser avec CakePHP et éventuellement développer vos propres applications en l'utilisant..

Étape 1: Pourquoi CakePHP?

PHP consacre une grande partie de son temps de développement à la réécriture de code commun pour les opérations de routine telles que l’accès à la base de données ou le renvoi de données au navigateur. Bien sûr, tout ce code de routine peut rapidement devenir désorganisé dans les applications PHP traditionnelles. Ce qu'il faut, c'est un framework pour PHP qui fasse quoi Rubis sur rails fait pour Ruby.

CakePHP existe depuis un certain temps et fait exactement cela. Il fournit un certain nombre de bibliothèques utiles à l’appui des tâches courantes et inclut des fonctions pour organiser le code dans des dossiers et l’association de code à des fichiers. En conséquence, le temps passé à écrire et à organiser le code devient considérablement réduit.

Ci-dessous sont juste quelques choses que CakePHP offre pour faciliter le développement.

  • Licence gratuite MIT Open-Source vous permettant d'utiliser des applications CakePHP dans n'importe lequel de vos propres projets.
  • Compatibilité avec PHP4 et PHP5. La version minimale requise est 4.3.2.
  • Prise en charge de MySQL, PostgreSQL SQLite, PEAR-DB et wrappers pour ADODB, une bibliothèque d'abstraction de base de données.
  • Mise en page modèle-vue-contrôleur.
  • Interaction facile dans la base de données CRUD (Créer, Lire, Mettre à jour et Supprimer).
  • Échafaudages pour gagner du temps de production.
  • URL conviviales pour les moteurs de recherche.
  • Des outils de validation des entrées et de désinfection pour rendre vos applications beaucoup plus sécurisées.
  • Templating avec la syntaxe PHP familière.
  • Opérations de cache.

Étape 2: Téléchargez le cadre

Avant de commencer à développer avec CakePHP, vous aurez besoin de votre propre copie de la structure téléchargée sur votre serveur. Visitez CakePHP.org et cliquez sur le gros bouton "Télécharger". Assurez-vous de télécharger la version stable et non la version candidate. Il existe également de nombreux formats de fichiers différents pour que vous puissiez choisir le meilleur pour votre ordinateur..

Étape 3: Télécharger et comprendre la structure du fichier

Une fois que vous avez sorti votre nouvelle copie de CakePHP, vous devez ensuite la télécharger sur un espace Web compatible PHP et MySQL. Je recommanderais de créer un nouveau répertoire pour les projets CakePHP.

Une fois le téléchargement terminé, la structure du répertoire devrait ressembler à ceci:

 / path_to_root_folder / cake / / docs / / app / config / controllers / models / plugins / tmp / vendors / views / webroot / index.php .htaccess / vendors / index.php .htaccess

Tous ces répertoires ou dossiers peuvent sembler un peu décourageants au début, mais ces répertoires distincts sont conçus pour mieux organiser tous les composants de la structure. Puisque des noms comme "tmp" ne sont pas explicites, voici à quoi servent ces dossiers:

  • le gâteau dossier stocke toutes les fonctions principales et internes de CakePHP. Vous n'aurez généralement pas besoin de modifier quoi que ce soit ici.
  • le docs dossier contient très peu, mais contient les informations de licence (COPYING.txt), un journal des modifications et quelques autres fichiers utiles. Ce répertoire n’est pas important pour CakePHP, vous pouvez donc le supprimer si vous le souhaitez..
  • le app le dossier est l'endroit où votre code d'application ira. Le dossier de l'application contiendra vos contrôleurs, votre configuration, vos modèles et bien plus encore..
    • le config Le dossier contient tous les fichiers de configuration de l'application. Cela inclut les détails de la base de données, la liste d'accès, les inflexions et les routes (réécriture d'URL).
    • le des modèles dossier stocke toutes les fonctionnalités de base de données SQL pour votre application.
    • le vues dossier stocke tous les modèles, mises en page (en-tête, pied de page) et modules auxiliaires d'aide à la fonctionnalité (comme AJAX).
    • le contrôleurs dossier stocke tous les contrôleurs de votre application. Un contrôleur est la partie de l'application qui dirige et contrôle le modèle et les vues en acceptant les entrées et en décidant quoi faire..
    • le plugins folder stocke les plugins qui sont une combinaison de modèles, de vues et de contrôleurs pouvant être empaquetés et utilisés dans d'autres applications. Des exemples sont les modules de gestion des utilisateurs ou un module RSS.
    • le tmp dossier stocke les fichiers de cache générés par le système de mise en cache et stocke également les journaux de débogage. Ce dossier sera très précieux pendant le développement.
    • le vendeurs dossier, peut contenir d'autres bibliothèques que vous souhaitez inclure dans une application particulière.
    • le webroot dossier stocke les supports statiques tels que CSS, les images et le JavaScript requis par votre application.
  • La deuxième vendeurs répertoire vous permettra de stocker des bibliothèques tierces et de les y connecter à partir de vos contrôleurs CakePHP. Par exemple, si nous voulions construire une application Facebook avec CakePHP, nous pourrions insérer la bibliothèque Facebook et configurer CakePHP pour le charger..

Étape 4: Configuration de CakePHP

Configurer CakePHP est assez simple. Nous devons juste dire à CakePHP nos détails de base de données et configurer comment nous voulons que la fonctionnalité de base fonctionne.

À des fins de développement, vous devez créer une nouvelle base de données et un utilisateur disposant des privilèges suivants: ALTER, CRÉER DES TABLES TEMPORAIRES, CRÉER, SUPPRIMER, DROP, SÉLECTIONNER, INSÉRER, MISE À JOUR, REFERENCES, INDEX, LOCK TABLES..

Une fois que l'utilisateur et la base de données ont été créés, nous pouvons trouver le fichier de configuration de la base de données de CakePHP, situé dans /app/config/database.php.default

Ouvrir et faire défiler jusqu'au tableau suivant

 var $ default = array ('driver' => 'mysql', 'connect' => 'mysql_connect', 'host' => 'localhost', 'login' => 'utilisateur', 'password' => 'password' , 'database' => 'nom_projet', 'préfixe' => ");

et remplissez les détails de votre base de données si nécessaire. Si pour une raison quelconque vous ne pouvez pas créer de nouvelle base de données ou si votre hôte ne vous le permet pas, vous pouvez définir un préfixe de table pour toutes vos tables CakePHP en définissant une valeur dans l'index 'prefix'.. Assurez-vous de renommer ce fichier en /app/config/database.php

La configuration principale est située dans /app/config/core.php. Vous pouvez modifier le niveau d'informations de débogage, le mode de stockage des sessions, les délais d'expiration de session pour la sécurité et les noms de cookies. Une fois que nous aurons commencé à développer, nous devrons peut-être les ajuster, mais les valeurs par défaut conviennent à la plupart des besoins..

Étape 5: S'assurer que cela fonctionne

Une fois que vous avez entré les détails de la base de données corrects et téléchargé tous les fichiers CakePHP, l'installation devrait être prête pour le développement. Pointez votre navigateur sur le dossier dans lequel vous avez téléchargé l'installation. Si tout fonctionne, vous devriez voir la page de succès suivante:

Fermeture

Ce tutoriel était destiné à présenter les bases de CakePHP et comment le mettre en place et le faire fonctionner sur votre serveur. Dans les versions suivantes, nous examinerons le développement d’une application intégrale à l’aide de CakePHP, l’ajout d’effets tels que AJAX et l’intégration de CakePHP à d’autres bibliothèques et services tels que Facebook..

  • Abonnez-vous au flux RSS NETTUTS pour plus de commentaires et d'articles sur le développement Web au quotidien.