J'utilise le framework thinkphp dans mon travail quotidien. Je suis entré en contact avec le framework Yii et le framework Laravel au cours de mon travail Afin de mieux comprendre les différents frameworks de PHP, je les ai résumés ici. . Comparons les différences entre les quatre frameworks couramment utilisés pour le développement PHP.
1. Framework PHP CI
Le framework CI est un framework léger PHP MVC simple et rapide, qui a une efficacité d'exécution élevée, rapide et concis , la quantité de code est faible, adaptée au développement de projets de petite et moyenne taille et peut également être utilisée pour des projets à grande échelle, mais l'évolutivité n'est pas très bonne.
Cours recommandé : "Tutoriel vidéo CI Framework "
Avantages : Le framework est relativement simple, adapté à l'entrée développement de niveau supérieur, facile à apprendre, rapide à démarrer, facile à statiquer et la documentation est relativement détaillée.
Inconvénients : Le framework étant petit, les fonctions sont incomplètes. Par exemple, si vous utilisez mongoDB, vous devez implémenter l'interface vous-même et le fonctionnement de la base de données n'est pas sécurisé. assez (opération d’écriture). Mauvais support pour les grands projets.
Workflow de développement :
1. index.php sert de contrôleur frontal pour initialiser les ressources de base requises pour exécuter CodeIgniter.
2. Le routeur vérifie la requête HTTP pour déterminer qui traitera la requête.
3. Si le fichier cache existe, il contournera la séquence d'exécution habituelle du système et sera envoyé directement au navigateur.
4. Sécurité. Les requêtes HTTP et toutes les données soumises par l'utilisateur seront filtrées avant de charger ApplicationController.
5. Le contrôleur charge des modèles, des bibliothèques principales, des plug-ins, des fonctions auxiliaires et toute autre ressource nécessaire pour traiter des demandes spécifiques.
6. La vue finale restitue le contenu envoyé au navigateur Web. Si la mise en cache est activée, la vue est d'abord mise en cache afin qu'elle soit disponible pour les demandes futures.
Mode URL de CI :
Le mode URL pris en charge par Ci est par défaut au format pathinfo, qui est séparé par /. Parmi eux, //localhost/citest/index.php/ est fixe et représente le fichier d'entrée
Par exemple :
//localhost/citest/index.php/hello/index
2. Framework ThinkPHP
Le framework TP est un framework de développement PHP domestique léger, rapide, compatible et simple qui utilise une structure orientée objet et le mode MVC pour le développement. Il peut prendre en charge des serveurs tels que Windows et Linux, ainsi que plusieurs bases de données et extensions PDO telles que MySql et Sqlite. Il contient des composants communs tels que l'architecture sous-jacente, le traitement de compatibilité, la bibliothèque de classes de base, la couche d'accès à la base de données, le moteur de modèles, le mécanisme de mise en cache, le mécanisme de plug-in, l'authentification des rôles, le traitement des formulaires, etc. -transplantation entre plates-formes et bases de données. Convient au développement de projets de petite et moyenne taille.
Cours recommandés : "Le dernier didacticiel vidéo ThinkPHP 5.1 en première mondiale"
Avantages : Simple et facile à utiliser (Le modèle, le contrôleur et la vue sont responsables de leur travail respectif), il dispose d'un moteur de modèles compilé qui prend en charge la technologie de bibliothèque de balises XML, prend en charge deux types de balises de modèle, la compilation dynamique et la technologie de mise en cache. Il prend également en charge les bibliothèques de balises personnalisées, avec une validation et un remplissage automatique des données uniques, un cryptage des données MD5 et d'autres fonctions. Le déploiement est simple et ne nécessite qu'un seul fichier d'entrée, vous pouvez donc démarrer rapidement.
Inconvénients : Le modèle est relativement fixe, ce qui permet aux idées de se solidifier facilement.
Il existe 4 formulaires de routage fournis dans le framework TP. La méthode de routage de réécriture nécessite des modifications supplémentaires dans la configuration avant de pouvoir être utilisée. Pour la méthode de configuration, voir https://www.cnblogs.com/lovele. -/p/9256575.html
1. obtenir le formulaire de routage
//网址/index.php?m=分组&c=控制器&a=方法(该形式书最底层的传输方式,不安全)。
2. formulaire de routage pathinfo [formulaire de routage par défaut] :
//网址/index.php/分组/控制器/方法
3. réécrire le formulaire de routage ;
//网址/分组/控制器/方法
4. Formats de routage compatibles :
//网址/index.php?s=/分组/控制器/方法
Framework de développement WEB PHP. Il intègre les fonctionnalités relativement nouvelles de PHP et divers modèles de conception. C'est un framework adapté à l'apprentissage, mais il nécessite une base PHP solide et compétente. Convient au développement de projets de grande et moyenne taille. Cours recommandés
: "Le dernier didacticiel vidéo pratique de Laravel Mall
" 1 , Support Composer2. La structure du framework est relativement claire, se concentrant sur la modularisation du code (abstraction du middleware, des tâches, des services, etc.) et l'évolutivité, et le système de routage est rapide et efficace
3. Support Pour gérer la falsification de requêtes intersites, lors de la soumission d'un message de formulaire, vous devez transmettre {{ csrf_field() }} 4. La communauté de Laravel est très forte, avec de riches packages d'extension et des outils 5. Avec des fonctions telles que la mise en cache, l'authentification, l'automatisation des tâches, le cryptage du hachage et les transactions 6. Le fichier d'environnement .env unique facilite la configuration du système et le développement de différentes plates-formes缺点:基于组件式的框架,相对有点臃肿
Laravel路由方法:laravel的路由功能很强大,包括
1、基本路由Route::get('/',function(){ return'HelloWorld';});
2、带参数路由Route::get('user/{id}', function($id){ return 'User '.$id;});
3、路由过滤参数Route::get('user/{id}/{name}',function($id,$name){ //}) -> where(array('id'=> '[0-9]+', 'name' =>'[a-z]+'));
4、子域名路由等等等等
5、控制器路由,例如下面的一些样式
Route::resource('article','ArticleController'); //restful方式(具体包括get/post等) Route::controller('article','ArticleController'); //restful方式(具体包括get/post等) Route::get('user/login','UserController@login');//非restful方式 get Route::post('user/i','UserController@login');//非restful方式post
四、php Yii 框架
Yii Framework是一个基于组件、用于大规模web应用开发的高性能PHP开源框架,是目前最具效率的PHP框架之一。适合大型重量型web应用开发。
推荐课程:《Yii开发大型商城项目视频教程》
优势:
1、纯OOP开发,模型使用方便
2、支持命令行工具开发,可以快速的创建一个web应用程序的代码
3、具有高度的可重用性和可扩展性
4、开发速度快,性能优异且功能丰富
5、支持composer包管理工具
缺点:model 层考虑较少,文档中中文文档较少。要求php技术精通水平,OOP编程也要很熟练
相关推荐:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!