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:
- Es bietet ein Gerüst für den schnellen Bau von Prototypen.
- Eine Cache-Klasse im CakePHP unterstützt das Caching und stellt die statische Schnittstelle und eine einheitliche API für die Interaktion mit verschiedenen Caching-Implementierungen bereit.
- Die Hash-Klasse stellt statische Dienstprogramme bereit, die eine ordnungsgemäße Array-Verwaltung ermöglichen und dadurch den Code optimieren.
- Die Inflector-Klasse manipuliert die bereitgestellte Zeichenfolge und verarbeitet Wortvariationen, einschließlich Pluralisierung und Großschreibung.
- Das Protokollieren ist in CakePHP einfach; Das LogTrait stellt die log()-Funktion bereit.
- Der schnellste Weg, mit REST loszulegen, besteht darin, ein paar Zeilen zum Einrichten von Ressourcenrouten in der config/routes.php hinzuzufügen.
- Das Validierungspaket in CakePHP bietet Funktionen zum Erstellen von Validatoren, die problemlos beliebige Datenarrays validieren können.
- Verschiedene Plug-Ins werden für die Verwendung in Verbindung mit CakePHP unterstützt: Chronos (das eine Sammlung von Erweiterungen ohne Abhängigkeiten für das DateTime-Objekt bereitstellt), DebugKit (verfügt über eine Debugging-Symbolleiste und erweiterte Debugging-Tools), ElasticSearch ( Dies bietet eine ORM-ähnliche Abstraktion zusätzlich zu Elasticsearch und erleichtert das Testen und Indizieren von Dokumenten.
- Phinx und CakePHP Mit Phinx können Entwickler Datenbanken eindeutig ändern und manipulieren. Keine Notwendigkeit, SQL handschriftlich zu schreiben; Stattdessen bietet phinx robuste APIs zum Erstellen von Migrationen mithilfe von PHP-Code.
- Eine Bake-Konsole wird bereitgestellt, um CakePHP schneller auszuführen; Die Bake-Konsole kann Modelle, Ansichten, Verhalten, Testfälle, Vorrichtungen und Plugins erstellen.
Phinx kann einfach installiert werden durch:
PHP-Komponist. Phar erfordert Robmorgan/Phinx
Middleware-Unterstützung ist vorhanden, damit wir unsere Anwendung in wiederverwendbare und zusammensetzbare Schichten zur Anfragebearbeitung oder Antworterstellung einbinden können.
Installation und Voraussetzungen:
Im Folgenden sind die Voraussetzungen aufgeführt, die vor Beginn der Installation erfüllt sein müssen:
- HTTP-Server (Apache, Nginx oder Microsoft IIS).
- PHP 7.3.
- mbstring PHP-Erweiterung
- intl-PHP-Erweiterung (bei Verwendung von , die intl-Erweiterung ist aktiviert, Sie müssen in den Ordner gehen und alle Dateien mit Namen kopieren, die icu*.dll ähneln. Anschließend müssen Sie diese Dateien in das Apache-bin-Verzeichnis einfügen.
- SimpleXML PHP-Erweiterung.
- PDO-PHP-Erweiterung.
Sie müssen eine der Datenbanken aus der angegebenen Liste auf Ihrem Computer installieren:
- MySQL (v5.5.3 oder höher)
- MariaDB (Version 5.5 oder höher)
- PostgreSQL
- SQLite3
- Microsoft SQL Server ( >= Version 2008)
5. FuelPHP
FuelPHP ist ein Open-Source-Framework, schnell und kompatibel mit PHP 5.4+-Versionen.
Wir haben die folgenden Funktionen integriert:
- Es handelt sich um ein Framework vom Typ Model-View-ViewModel (MVVM), das sich auf das Model-View-Controller (MVC)-Muster beschränkt und dem Model-View-Viewmodel (MVVM)-Ansatz folgt. Ansichtsmodelle sind ein alternativer Begriff für Präsentationsmodelle.
- FuelPHP unterstützt einen Router-basierten Ansatz, der es uns ermöglicht, den URI direkt zu schreiben.
- Unterstützt die CSRF-Tokens, um Cross-Site-Scripting-Fälschungen zu verhindern.
- Eingabefilterung und Abfrage-Builder helfen bei der SQL-Injection.
- Wir unterstützen das Authentifizierungs-Framework, um eine sichere Authentifizierung zu gewährleisten.
- FuelPHP bietet eine CLI namens „oil“, die die Entwicklung, Testunterstützung und das Debugging beschleunigen soll. Es hilft auch, Datenbankmigrationen durchzuführen.
- Entwickler können einen fliegenden Start haben, indem sie die für Controller und Modelle bereitgestellten Basisklassen nutzen. Solche Funktionen sind – Controller_Template (fügt den Controllern einfache Seitenvorlagenfunktionen hinzu), Controller_Rest (Möglichkeit zur RESTful-API-Erstellung), Controller_Hybrid (kombiniert zwei Funktionen in einem einzigen Controller), Model_crud (stellt alle Methoden für CRUD-Operationen in einer einzigen Tabelle bereit).
- Lightweight ORM bietet eine objektorientierte Möglichkeit, mit Datenbankdaten zu arbeiten und CRUD durchzuführen; Es gibt Beziehungen wie „has-many“ und „many-many“, die kaskadierende Speicherungen und Löschvorgänge für verwandte Objekte ermöglichen. Darüber hinaus sind Beobachter dazu da, Objektinstanzen zu aktualisieren.
- Security umfasst das Auth-Framework, hat die Opauth-Bibliothek integriert und bietet verschiedene andere Funktionen wie rollenbasierte Zugriffskontrolle (RBAC), sichere Hashing-Funktion für Passwörter und OAuth-Integration für die Authentifizierung in sozialen Medien.
- Es gibt Vorlagenparser zum Verbessern von Ansichten aus einfachem PHP; Dafür gibt es zahlreiche Bibliotheken:
- Schnurrbart
- Zweig
- Haml
- Jade
- Daewoo
- Smarty
- Markdown
Installationsschritte:
Befolgen Sie dazu die angegebenen Schritte:
- $ curl https://get.fuelphp.com/oil | sh
Um das Projekt zu erstellen, können Sie die folgenden Schritte ausführen:
- $oil create
- $ Composer create-project Kraftstoff/Kraftstoff –prefer-dist
Fazit
In der obigen Dokumentation haben wir mehrere PHP-Frameworks für die Bereitstellung mehrerer Codeentwicklungsfunktionen zitiert. Bevor Sie sich für eines davon entscheiden, müssen unbedingt die Anforderungen und Designmuster besprochen werden, die befolgt werden sollten. Die Frameworks waren vielfältig und stellten verschiedene Plug-Ins zur Verfügung, um die Protokollierung und Metrikverfolgung zu ermöglichen. Das Framework namens Lumen von Laravel wird bei der Entwicklung von Microservices sehr geschätzt, da sich die Microservices-Architektur von monolithischen Anwendungen unterscheidet. Vor dem Codieren sind die Protokollierungsmechanismen, die Datenbankverwaltung, die Authentifizierungssicherheit und die Implementierung von größter Bedeutung. Bei der Auswahl eines Frameworks müssen Sie die spezifische Domäne berücksichtigen, für die die Anwendung gedacht ist. Dazu gehören Bereiche wie Bank- und Finanzdienstleistungen, Supply Chain Management, Biowissenschaften, Einzelhandel und soziale Netzwerke.
Das obige ist der detaillierte Inhalt vonPHP-Frameworks. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!