phpotes: codeigniter

20
Codeigniter Un framework php pour créer des applications web Phpotes 08/10/13 Bernard Trevisan – [email protected]

Upload: andaolvras

Post on 16-Jun-2015

1.196 views

Category:

Technology


8 download

DESCRIPTION

Présentation de Bernard Trévisan (bt-logiciels) sur le framework CodeIgniter. PHPotes du 8/10/13.

TRANSCRIPT

Page 1: PHPotes: Codeigniter

Codeigniter

Un framework php pour créer des applications web

Phpotes 08/10/13Bernard Trevisan – [email protected]

Page 2: PHPotes: Codeigniter

2

Prétentions

• Empreinte réduite• Performances

exceptionnelles• Documentation claire et

approfondie• Large compatibilité• Pratiquement sans

configuration

• Pas de règles de codage restrictives

• Pas de langage de template à apprendre

• Simple• Rapide à mettre en

œuvre• Souple

08/10/13 Framework Codeigniter - phpotes

Page 3: PHPotes: Codeigniter

Framework Codeigniter - phpotes 3

Caractéristiques

• Approche MVC (modèle-vue-contrôleur)• Versions :– Beta 1.0 en février 2006 (Php 4)– 2.1.4 en juillet 2013 (Php 5.1.6 depuis janvier

2011)• Licence type Apache / BSD• Support SGBD :– MySQL (4.1+), MySQLi, MS SQL, Postgres, Oracle,

SQLite et ODBC08/10/13

Page 4: PHPotes: Codeigniter

Framework Codeigniter - phpotes 4

Mise en oeuvre

• Télécharger le framework– http://ellislab.com/codeigniter/download

• Décompresser dans le répertoire cible• Accéder à l’URL

08/10/13

Page 5: PHPotes: Codeigniter

Framework Codeigniter - phpotes 5

Fonctionnement

08/10/13

URL : http://example.com/index.php/class/function/param1/param2

Page 6: PHPotes: Codeigniter

Framework Codeigniter - phpotes 6

Arborescence

• application/– controllers/• welcome.php

– views/• welcome_message.php

• system/• user_guide/• licence.txt• index.php08/10/13

Page 7: PHPotes: Codeigniter

Framework Codeigniter - phpotes 7

Contrôleur exemple

08/10/13

Page 8: PHPotes: Codeigniter

Framework Codeigniter - phpotes 8

Vue exemple (extrait)

08/10/13

Page 9: PHPotes: Codeigniter

Framework Codeigniter - phpotes 9

Structure d’application/

• cache/– Stockage des pages mises en cache

• config/– Fichiers de configuration

• controllers/– Contrôleurs

• core/– Remplacement ou extension des classes système

08/10/13

Page 10: PHPotes: Codeigniter

Framework Codeigniter - phpotes 10

Structure d’application/ (suite)

• errors/– Pages d’erreur (404 …)

• helpers/– Helpers (collections de fonctions) applicatifs ou

surchargés• hook/– Points de débranchement (extension du noyau)

• language/– Ressources multilingues

08/10/13

Page 11: PHPotes: Codeigniter

Framework Codeigniter - phpotes 11

Structure d’application/ (suite)

• libraries/– Classes applicatives ou surchargées

• logs/– Journaux d’exécution quotidiens

• models/– Modèles

• third_party/• views/– Vues

08/10/13

Page 12: PHPotes: Codeigniter

Framework Codeigniter - phpotes 12

Fichiers de configuration

• autoload.php• config.php• constants.php• database.php• doctypes.php• foreign_chars.php• hooks.php• migration.php

• mimes.php• profiler.php• routes.php• smileys.php• user_agents.php

08/10/13

Page 13: PHPotes: Codeigniter

Framework Codeigniter - phpotes 13

Aide en ligne

08/10/13

Présentation Utilisation Référence

Page 14: PHPotes: Codeigniter

Framework Codeigniter - phpotes 14

Exemple de page d’aide (référence)

08/10/13

Page 15: PHPotes: Codeigniter

Framework Codeigniter - phpotes 15

Rubriques utilisation

• URL• contrôleurs• noms réservés• vues• modèles• helpers• bibliothèques• drivers• noyau• auto-chargement• fonctions communes

• routage• erreurs• cache• profilage• ligne de commande• multi-applications• environnements• syntaxe Php alternative• sécurité• guide de style• guide de documentation

08/10/13

Page 16: PHPotes: Codeigniter

Framework Codeigniter - phpotes 16

Classes système• benchmarking• calendar• cart• config• email• encryption• file uploading• form validation• FTP• HTML table• image manipulation• input• javascript• loader

• language• migration• output• pagination• security• session• trackback• template parser• typography• unit testing• URI• user agent• XML-RPC• zip encoding

08/10/13

Page 17: PHPotes: Codeigniter

Framework Codeigniter - phpotes 17

Drivers (classes mère et filles)

• caching– APC, file-based, memcached, dummy

• database– différentes sortes d’accès aux SGBD, dont un

« active record » simplifié• javascript– support expérimental de jquery

08/10/13

Page 18: PHPotes: Codeigniter

Framework Codeigniter - phpotes 18

Helpers système

• array• captcha• cookie• date• directory• download• email• file• form• HTML• inflector

• language• number• path• security• smiley• string• texte• typography• URL• XML

08/10/13

Page 19: PHPotes: Codeigniter

Framework Codeigniter - phpotes 19

Sécurité (optionnel)

• renommage et relocalisation des répertoires• restriction du contenu des URL• globales limitées et filtrées• filtrage XSS• form validation• échappement des données avant insertion• filtrage des noms de fichiers entrés• CSRF08/10/13

Page 20: PHPotes: Codeigniter

Framework Codeigniter - phpotes 20

Travail en équipe

• Pas de dispositions spécifiques pour le travail en équipe

08/10/13