Frame de phalcon PHP: la combinaison parfaite de vitesse et d'efficacité
Points de base:
Les cadres PHP varient des cadres complètes qui incluent ORM, les composants de vérification et un grand nombre d'aideurs HTML aux cadres miniatures qui ne fournissent que des capacités de routage. Ils prétendent tous être uniques, comme une belle grammaire, une vitesse extrêmement rapide ou bien documentée. Phalcon est l'un d'eux, mais il est très différent des autres frameworks; Cet article présentera brièvement Phalcon et son caractère unique.
Qu'est-ce que Phalcon?
PhalCon est un framework complet. Il suit l'architecture MVC et fournit des fonctions telles que ORM, la bibliothèque d'objets de demande, le moteur de modèle, le cache, la pagination, etc. (une liste complète des fonctions peut être trouvée sur son site officiel). Mais ce qui rend PhalCon unique, c'est que vous n'avez pas besoin de télécharger et de décompresser à un certain répertoire comme la plupart des autres cadres. Au lieu de cela, vous devez le télécharger et l'installer en tant que module PHP. Le processus d'installation ne prend que quelques minutes et les instructions d'installation peuvent être trouvées dans la documentation. De plus, PhalCon est open source. Vous pouvez modifier le code et le recompiler à tout moment.
La compilation apporte de meilleures performances
Un inconvénient majeur de PHP est que chaque demande nécessite de lire tous les fichiers du disque dur, de les convertir en bytecode, puis de s'exécuter. Cela peut conduire à une pénalité de performance sérieuse par rapport à d'autres langues telles que Ruby (Rails) ou Python (Django, Flask). Le Framework Phalcon lui-même réside dans RAM, il n'est donc pas nécessaire de gérer l'ensemble de fichiers Framework. Les repères sur le site officiel montrent ses avantages de performance significatifs. phalcon a plus du double du nombre de demandes par seconde que Codeigniter. Si l'heure de chaque demande est prise en compte, PhalCon prend le plus de temps pour traiter la demande. N'oubliez donc pas que Phalcon est plus rapide lorsque d'autres cadres prétendent être rapides.
en utilisant phalcon
Phalcon fournit les caractéristiques classiques des cadres MVC PHP modernes (routage, contrôleur, modèles de vue, orms, caches, etc.), et il n'y a rien de spécial dans les autres cadres sauf la vitesse. Cependant, jetons un coup d'œil à quoi ressemble un projet Phalcon typique. Tout d'abord, il existe généralement un fichier de démarrage qui est appelé à chaque demande. La demande est envoyée au chargeur de démarrage via les instructions stockées dans le fichier .htaccess.
<code><ifmodule mod_rewrite.c=""> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?_url=/ [QSA,L] </ifmodule></code>
La documentation PhalCon recommande d'utiliser la structure du répertoire suivant:
<code> app/ controllers/ models/ views/ public/ css/ img/ js/</code>
Cependant, si nécessaire, vous pouvez modifier la disposition du répertoire, car tout sera accessible via le fichier de démarrage qui existe en tant que public / index.php.
<?php try { // 注册自动加载器 $loader = new PhalconLoader(); $loader->registerDirs(array( '../app/controllers/', '../app/models/' ))->register(); // 创建依赖注入容器 $di = new PhalconDIFactoryDefault(); // 设置视图组件 $di->set('view', function(){ $view = new PhalconMvcView(); $view->setViewsDir('../app/views/'); return $view; }); // 处理请求 $application = new PhalconMvcApplication(); $application->setDI($di); echo $application->handle()->getContent(); } catch (PhalconException $e) { echo "PhalconException: ", $e->getMessage(); }
Les contrôleurs et les modèles sont chargés automatiquement, vous pouvez donc créer des fichiers n'importe où dans votre projet et les utiliser. Le contrôleur doit étendre PhalconMVCController et le modèle doit étendre PhalconMVCModel. L'opération de contrôleur est définie comme suit:
public function indexAction() { echo '欢迎来到首页'; }
Le modèle est également très simple:
class Users extends PhalconMvcModel { }
En étendant la classe phalconmvcmodel, vous pouvez immédiatement accéder à certaines méthodes pratiques telles que trouver (), sauver () et valider (). Vous pouvez utiliser la relation suivante:
class Users extends PhalconMvcModel { public function initialize() { $this->hasMany('id', 'comments', 'comments_id'); } }
Les vues fournissent des fonctions de base telles que la possibilité de transmettre des données aux vues et d'utiliser les dispositions. Cependant, les vues Phalcon n'utilisent pas de syntaxe spéciale comme des brindilles ou des lames, mais utilisent plutôt du PHP pur.
<!DOCTYPE html> <html> <head> <title><?php echo $this->title; ?></title> </head> <body> <?php echo $this->getContent(); ?> </body> </html>
Cependant, PhalCon dispose d'un système de messagerie flash intégré:
$this->flashSession->success('成功登录!');
PhalCon a son propre langage de requête PHALCON ORM (PHQL), qui peut être utilisé pour rendre les interactions de base de données plus expressives et simplifiées. PHQL peut être intégré à des modèles pour définir facilement et utiliser des relations entre les tables. Vous pouvez utiliser PHQL en étendant la classe PhalconMVCModelQuery, puis créez une nouvelle requête, par exemple:
$query = new PhalconMvcModelQuery("SELECT * FROM Users", $di); $users = $query->execute();
Vous pouvez utiliser un constructeur de requête au lieu de ce SQL brut:
$users = $this->modelsManager->createBuilder()->from('Users')->orderBy('username')->getQuery()->execute();
Ce sera très pratique lorsque votre requête deviendra plus complexe.
Conclusion
Phalcon fournit les caractéristiques classiques des cadres MVC PHP modernes, il devrait donc être très pratique à utiliser, en ce sens, il s'agit juste d'un autre cadre PHP. Mais ce qui se démarque vraiment, c'est sa vitesse. Si vous souhaitez en savoir plus sur PhalCon, veuillez consulter la documentation de ce cadre. Assurez-vous de l'essayer!
(image de Fotolia)
FAQ sur le framework phalconphp (FAQ)
phalconphp est un framework PHP haute performance qui est implémenté comme une extension C. Cela signifie qu'il est compilé et fonctionne au niveau du système, ce qui le rend très rapide. Contrairement à d'autres cadres PHP, Phalconphp n'a pas besoin d'être interprété au moment de l'exécution, ce qui réduit considérablement les frais généraux. Il a également une empreinte de mémoire plus bas, ce qui en fait un excellent choix pour les sites Web à haut trafic.
L'installation de phalconphp nécessite de la compiler sous forme d'extension PHP. Ce processus varie selon le système d'exploitation du serveur. Pour la plupart des distributions Linux, vous pouvez utiliser le gestionnaire de packages pour installer Phalconphp. Pour Windows, vous pouvez télécharger le fichier DLL et l'ajouter au répertoire d'extension PHP. Après l'installation, vous devez redémarrer le serveur Web pour que les modifications prennent effet.
Oui, la conception de Phalconphp est aussi discrète que possible. Vous pouvez l'utiliser avec votre code PHP existant sans aucun problème. Cela en fait un excellent choix pour refactoriser progressivement les applications PHP héritées.
phalconphp comprend un système de cartographie relationnelle d'objet (ORM) qui permet une interaction facile avec les bases de données. Vous pouvez l'utiliser pour créer, lire, mettre à jour et supprimer des enregistrements sans avoir à rédiger des requêtes SQL manuellement. ORM prend également en charge les relations entre les tables, ce qui permet de gérer facilement les structures de données complexes.
phalconphp est un cadre universel qui peut être utilisé pour créer diverses applications. Des sites Web simples aux applications Web complexes, Phalconphp fournit les fonctionnalités et les performances dont vous avez besoin. Il convient particulièrement aux sites Web et applications à haut trafic qui nécessitent une interaction en temps réel.
phalconphp comprend un composant de formulaire qui peut facilement gérer l'entrée utilisateur. Vous pouvez l'utiliser pour créer des formulaires, vérifier les entrées et afficher les messages d'erreur. Le composant de formulaire comprend également des attaques de protection contre les demandes de demande croisée (CSRF).
Oui, PhalConphp est construit autour d'une architecture de contrôle-contrôle (MVC). Ce modèle de conception divise l'application en trois pièces interdépendantes, ce qui facilite le maintien et le test. Phalconphp prend également en charge d'autres modèles de conception tels que l'injection de dépendance et la programmation axée sur les événements.
phalconphp comprend un puissant système de gestion des erreurs. Vous pouvez l'utiliser pour attraper et gérer les exceptions, enregistrer les erreurs et afficher les pages d'erreur personnalisées. Le système de gestion des erreurs est également intégré à l'architecture MVC, vous permettant de gérer les erreurs au niveau du contrôleur.
Oui, la conception de Phalconphp est évolutive. Le compositeur peut être utilisé pour gérer et installer des bibliothèques tierces. Phalconphp comprend également un composant de chargeur qui permet de charger automatiquement les classes à partir de n'importe quel répertoire.
phalconphp contient certaines fonctionnalités de sécurité hors de la boîte. Ces fonctionnalités incluent le filtrage des entrées, l'évasion de sortie et la protection du CSRF. Vous pouvez également utiliser le composant PhalConPHP ACL pour implémenter le contrôle d'accès dans votre application.
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!