Mehrere Open-Source-Communities bieten PHP-Frameworks an, die Inline-Funktionen für die Entwicklung PHP-basierter Anwendungen bereitstellen. Entwickler haben die Möglichkeit, Frameworks zu verwenden, da diese keine obligatorischen Komponenten sind. Ohne das Framework beinhaltet der Vanilla-Ansatz der PHP-Entwicklung jedoch einen hohen Verwaltungsaufwand für die Softwarefunktionen, Funktionalitäten und Sicherheitsfunktionen, der mehr Entwicklerressourcen erfordert und die Entwicklungskosten erhöht. Einige weit verbreitete PHP-Frameworks sind Laravel, CodeIgniter, Symfony, CakePHP, FuelPHP, Phalcon, Slim und Zend Framework. Darüber hinaus bietet das PHP-Framework einige wertvolle Funktionen, die dazu beitragen, den Entwicklungsprozess der PHP-Anwendungen zu rationalisieren, die in die Anwendungsarchitektur einbezogen werden sollten.
Top-Liste der PHP-Frameworks (Funktionen)
Unten finden Sie die Liste der besten PHP-Frameworks, basierend auf ihrer Beliebtheit und der Fähigkeit, die Anwendungsentwicklung zu erleichtern.
WERBUNG
Beliebter Kurs in dieser Kategorie
PHP-ENTWICKLER - Spezialisierung | 8-Kurs-Reihe | 3 Probetests
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
1. Laravel
Es handelt sich um ein Open-Source-Framework, das der Model-View-Controller-basierten Architektur folgt.
Verschiedene Funktionen, die es bietet, sind:
- Der Composer ist seit Laravel 4 verfügbar und fungiert als Abhängigkeitsmanager, um Framework-Agnostik hinzuzufügen.
- Eloquentes ORM, d. h. eine aktive Datensatzmusterimplementierung.
- Query Builder stellt eine Reihe von Klassen bereit.
- Laravel inspiriert zu extrem sauberem und lesbarem Code und macht so das Leben der Entwickler einfacher.
- Laravel bietet robuste Webanwendungssicherheit, einschließlich Passwort-Hashing, Verschlüsselung, E-Mail-Verifizierung und API-Authentifizierung.
- Laravel sorgt für geschütztes und sicheres Routing, indem es alle Routen im Routenverzeichnis definiert und das Framework diese Dateien automatisch herunterlädt.
- Um Cross-Site-Fälschungen zu verhindern, hängt das System ein CSRF-Token an URLs an.
- Das Framework bietet Funktionen wie Blade-Vorlagen (Templating Engine), Lokalisierung, Javascript und CSS-Gerüst im Frontend.
- Unterstützt Redis (Schlüsselwertspeicher), Paginierung, Migrationen (Freigabe des Datenbankschemas), Datenbank-Seeding,
Serveranforderungen vor der Arbeit mit Laravel:
Die Verwendung der virtuellen Maschine Laravel Homestead ist die beste Wahl, und wir empfehlen dringend, sie als unsere lokale Laravel-Entwicklungsumgebung zu verwenden.
Wenn Sie Homestead nicht verwenden, ist Folgendes erforderlich:
- PHP >= 7.1.3
- OpenSSL PHP-Erweiterung
- PDO-PHP-Erweiterung
- Mbstring PHP-Erweiterung
- Tokenizer PHP-Erweiterung
- XML-PHP-Erweiterung
- Ctype PHP-Erweiterung
- JSON PHP-Erweiterung
- BCMath PHP-Erweiterung
Laravel installieren:
Laravel nutzt Composer, um seine Abhängigkeiten zu verwalten, daher ist die Hauptvoraussetzung, dass der Composer vorinstalliert ist. Laden Sie dann das Laravel-Installationsprogramm mit Composer wie unten angegeben herunter.
Composer Global erfordert Laravel/Installer.
- Ein Projekt über Composer erstellen
Komponist erstellt Projekt – bevorzugte Entfernung Laravel/Laravel-Blog
- Lokaler Entwicklungsserver
2. CodeIgniter
CodeIgniter ist ein Open-Source-Entwicklungsframework.
Die folgenden Funktionen werden bereitgestellt:
- Es ist keine strenge Model-View-Controller-Implementierung erforderlich; Der Controller ist obligatorisch und das Modell und die Ansicht sind optional.
- Es gibt Hilfsfunktionen wie URL-Helfer, die bei der Linkerstellung helfen, Formular-Helfer, Text-Helfer, die Text formatieren, und Cookie-Helfer, die Cookies setzen und lesen.
- Sie können neue Bibliotheken erstellen und native Bibliotheken ersetzen und entfernen.
- Die Hooks-Funktion bietet eine Möglichkeit, auf das Innenleben des Frameworks zuzugreifen und es zu ändern, ohne die Kerndateien zu hacken.
- Die Auto-Load-Funktion ermöglicht die automatische Initialisierung von Bibliotheken, Helfern und Modellen bei jedem Systemstart.
- CodeIgniter bietet eine Seiten-Caching-Funktion und verbessert so die Leistung.
- CodeIgniter enthält eine Fehlerprotokollierungsklasse, die Fehler speichert und Meldungen als Textdateien debuggt.
- URI-Routing ist vorhanden; Die URL-Zeichenfolge wird eindeutig dem Controller zugeordnet.
- Passwort-Hashing gibt es für die PHP-Version > 5.5.
- Im Datenbankteil sind verschiedene bereitgestellte Funktionen QueryBuilder, QueryCaching, Transaktionen usw.
- Sie können Umgebungsvariablen festlegen, um zu bestimmen, wo die Anwendung ausgeführt werden soll, entweder in der Entwicklungsumgebung oder in der Produktion.
Wie installiere ich CodeIgniter?
- CodeIgniter herunterladen.
- Entpacken Sie das Paket.
- Laden Sie die CodeIgniter-Ordner und -Dateien auf Ihren Server hoch. Normalerweise befindet sich die Datei index.php in Ihrem Stammverzeichnis.
- Öffnen Sie die Datei application/config/config.php mit einem Texteditor und legen Sie Ihre Basis-URL fest; Wenn Sie Verschlüsselung oder Sitzungen verwenden möchten, legen Sie Ihren Verschlüsselungsschlüssel fest.
- Wenn Sie eine Datenbank verwenden möchten, öffnen Sie die Datei „application/config/database.php“ mit einem Texteditor und legen Sie Ihre Datenbankeinstellungen fest.
3. Symfony
Symfony ist Open-Source-Software; Symfony-Komponenten sind eine Reihe entkoppelter und wiederverwendbarer PHP-Bibliotheken. Ziel ist die Entwicklung robuster Unternehmensanwendungen und gibt Entwicklern die volle Kontrolle über die Konfiguration von Verzeichnissen bis hin zu Fremdbibliotheken und kann individuell angepasst werden.
Symfony ist mit den folgenden Funktionen ausgestattet:
- Lokalisiertes Routing (i18n) wird bereitgestellt; Durch die Lokalisierung der Routen wird es möglich, einzigartige Pfade pro Gebietsschema anzubieten. Symfony ermöglicht das Schreiben dieser Routen ohne Duplizierung und unterstützt auch Platzhalter.
- Zweigvorlagen gibt es; sie sind einfach und verarbeiten die PHP-Tags nicht; Twig kann automatisches HTML-Escape, manuelles Escapen für kontextbezogene Ausgabe und einige Filter durchführen.
- Twig Template Caching beschleunigt den Prozess, indem Vorlagen in native PHP-Klassen kompiliert und zwischengespeichert werden.
- Die Asset-Komponente dient der URL-Generierung und Versionierung von CSS, JS und Bildern.
- Die browserKit-Komponente dient dazu, das Verhalten eines Webbrowsers zu simulieren und es einem zu ermöglichen, programmgesteuert Anfragen zu stellen, auf Links zu klicken und Formulare zu senden.
- Eine Abhängigkeitsinjektionskomponente implementiert einen PSR-11-kompatiblen Servicecontainer, der die Standardisierung und Zentralisierung von Objekten in der Anwendung ermöglicht.
- DOMCrawler-Komponente dient dazu, die DOM-Navigation für HTML- und XML-Dokumente zu vereinfachen.
- Die Dotenv-Komponente dient dazu, Umgebungsvariablen in .env-Variablen zu speichern.
- Der Event-Dispatcher ist da, damit die Komponente über den Event-Dispatcher kommunizieren und diese abhören kann.
- LDAP-Komponente ist bereits vorhanden, um mit dem LDAP-Server zu kommunizieren.
- Die ExpressionLanguage-Komponente stellt eine Engine bereit, die Ausdrücke kompilieren und auswerten kann.
- Die Polyfill/APCu-Komponente stellt apcu_*-Funktionen und die ACPUIterator-Klasse für Benutzer der älteren APC-Erweiterung bereit.
- Die Serializer-Komponente dient dazu, Objekte in Formate wie JSON, XML oder YAML umzuwandeln.
Installationsschritte:
Führen Sie die folgenden Schritte für Downloads aus; Das System sollte den Composer vorinstallieren.
Komponist benötigt Symphonie/Asset:
Zum Herunterladen einzelner Komponenten wie oben erwähnt besuchen Sie bitte: https://symfony.com/components
4. CakePHP
CakePHP ist eine Open-Source-Plattform, die das Erstellen von Webanwendungen einfacher und schneller macht und weniger Code erfordert.
CakePHP verfügt über die folgenden Funktionen:
- Il fournit un échafaudage pour construire rapidement des prototypes.
- Une classe de cache dans CakePHP prend en charge la mise en cache et fournit l'interface statique et l'API uniforme pour interagir avec diverses implémentations de mise en cache.
- La classe de hachage fournit des utilitaires statiques qui assurent une gestion appropriée des tableaux, optimisant ainsi le code.
- La classe Inflector manipule la chaîne fournie et gère les variations de mots, y compris la pluralisation et la majuscule.
- La journalisation est facile dans CakePHP ; le LogTrait fournit la fonction log().
- Le moyen le plus rapide de devenir opérationnel avec REST est d'ajouter quelques lignes pour configurer les routes de ressources dans le fichier config/routes.php.
- Le package de validation de CakePHP fournit des fonctionnalités permettant de créer des validateurs capables de valider facilement des tableaux arbitraires de données.
- Divers plug-ins sont pris en charge pour une utilisation avec CakePHP, notamment Chronos (qui fournit une collection d'extensions sans dépendance à l'objet DateTime), DebugKit (possède une barre d'outils de débogage et des outils de débogage améliorés), ElasticSearch ( qui fournit une abstraction de type ORM au-dessus d'elasticsearch, facilite les tests et l'indexation des documents).
- Phinx et CakePHP phinx permet aux développeurs de modifier et de manipuler clairement les bases de données. Pas besoin d'écrire manuellement du SQL ; à la place, phinx fournit des API robustes pour créer des migrations à l'aide de code PHP.
- Une console Bake est fournie pour exécuter CakePHP plus rapidement ; la console Bake peut créer des modèles, des vues, des comportements, des cas de test, des appareils et des plugins.
Phinx peut être simplement installé par :
compositeur php. phar nécessite robmorgan/phinx
La prise en charge du middleware est là pour que nous puissions envelopper notre application dans des couches réutilisables et composables de gestion des demandes ou de création de réponses.
Installation et pré-requis :
Vous trouverez ci-dessous les prérequis à remplir avant de démarrer l'installation :
- Serveur HTTP (Apache, Nginx ou Microsoft IIS).
- PHP 7.3.
- Extension PHP mbstring
- Extension PHP intl (si vous utilisez XAMPP, l'extension intl doit être incluse, mais assurez-vous de décommenter extension = php_intl.dll dans Php.ini et de redémarrer le serveur XAMPP via le panneau de configuration, au cas où vous utilisez WAMP ; par défaut , l'extension intl est activée. Pour l'activer, vous devez aller dans le dossier et copier tous les fichiers portant des noms similaires à icu*.dll. Ensuite, collez ces fichiers dans le répertoire bin Apache.
.
- Extension PHP SimpleXML.
- Extension PHP PDO.
Vous devez installer l'une des bases de données de la liste donnée sur votre machine :
- MySQL (v5.5.3 ou supérieure)
- MariaDB (v 5.5 ou supérieure)
- PostgreSQL
- SQLite3
- Serveur Microsoft SQL (>= version 2008)
5. CarburantPHP
FuelPHP est un framework open-source, rapide et compatible avec les versions PHP 5.4+.
Nous avons inclus les fonctionnalités suivantes :
- Il s'agit d'un framework de type modèle-vue-vuemodèle (MVVM) qui se limite au modèle modèle-vue-contrôleur (MVC) et suit l'approche modèle-vue-vuemodèle (MVVM). Les modèles de vue sont un terme alternatif pour les modèles de présentation.
- FuelPHP prend en charge une approche basée sur un routeur nous permettant d'écrire directement l'URI.
- Prend en charge les jetons CSRF pour empêcher la falsification de scripts intersites.
- Le filtrage des entrées et le générateur de requêtes facilitent l'injection SQL.
- Nous prenons en charge le cadre d'authentification pour garantir une authentification sécurisée.
- FuelPHP fournit une CLI appelée « huile », conçue pour accélérer le développement, l'assistance aux tests et le débogage. Cela aide également à exécuter des migrations de bases de données.
- Les développeurs peuvent prendre un bon départ en utilisant les classes de base fournies pour les contrôleurs et les modèles. Ces fonctionnalités sont – Controller_Template (ajoute une fonctionnalité de modèle de page simple aux contrôleurs), Controller_Rest (moyen de création d'API RESTful), Controller_Hybrid (combine deux fonctionnalités en un seul contrôleur), Model_crud (fournit toutes les méthodes pour les opérations CRUD dans une seule table).
- L'ORM léger fournit une manière orientée objet de travailler avec les données de base de données et d'effectuer du CRUD ; des relations telles que has-many et many-many sont présentes, des sauvegardes et des suppressions en cascade pour les objets associés. De plus, des observateurs sont là pour mettre à jour les instances d'objets.
- La sécurité intègre le framework Auth, a intégré la bibliothèque Opauth et fournit diverses autres fonctionnalités telles que le contrôle d'accès basé sur les rôles (RBAC), la fonction de hachage sécurisé pour les mots de passe et l'intégration OAuth pour l'authentification des réseaux sociaux.
- Il existe des analyseurs de modèles pour améliorer les vues à partir de PHP simple ; de nombreuses bibliothèques sont là pour cela :
- Moustache
- Brindille
- Haml
- Jade
- Daewoo
- Intelligent
- Marquage
Étapes d'installation :
Suivez les étapes indiquées pour la même chose :
- $ curl https://get.fuelphp.com/oil | merde
Pour créer le projet, vous pouvez suivre ces étapes :
- $ huile créer
- $ composer create-project fuel/fuel –prefer-dist
Conclusion
Dans la documentation ci-dessus, nous avons cité plusieurs frameworks PHP pour proposer plusieurs fonctionnalités de développement de code. Avant de choisir l’un d’entre eux, il est essentiel de discuter des exigences et des modèles de conception à suivre. Les frameworks étaient diversifiés et fournissaient divers plug-ins pour permettre la journalisation et le traçage des métriques. Le framework nommé Lumen par Laravel est très apprécié dans la recherche de développement de microservices, car l'architecture des microservices diffère des applications monolithiques. Les mécanismes de journalisation, la gestion de la base de données, la sécurité de l'authentification et la mise en œuvre sont une préoccupation majeure avant le codage. Lorsque vous choisissez un framework, vous devez prendre en compte le domaine spécifique auquel l'application est destinée. Cela inclut des domaines tels que les services bancaires et financiers, la gestion de la chaîne d'approvisionnement, les sciences de la vie, la vente au détail et les réseaux sociaux.
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!