Erstellen und Ausführen eines FuelPHP-Projekts
Was ist FuelPHP?
FuelPHP ist ein flexibles und modulares PHP-Framework, das für die Entwicklung moderner Webanwendungen entwickelt wurde. Es folgt dem HMVC (Hierarchical Model-View-Controller) Designmuster und bietet eine Vielzahl an Funktionen und Werkzeugen, die es Entwicklern ermöglichen, schnell hochwertige Webanwendungen zu erstellen. FuelPHP ist bekannt für seine Flexibilität, hohe Leistung und einfache Erweiterbarkeit und wird von vielen Entwicklern bevorzugt.
Hauptmerkmale und Vorteile von FuelPHP
- HMVC-Architektur: Unterstützt hierarchische MVC-Designmuster und erleichtert die Wiederverwendung und modulare Entwicklung von Code.
- Hohe Leistung: FuelPHP ist bekannt für seine effiziente Leistung und Geschwindigkeit und kann hochkonkurrierende Anfragen verarbeiten.
- Einfache Erweiterbarkeit: Bietet einen reichhaltigen Erweiterungsmechanismus, der es Entwicklern ermöglicht, benutzerdefinierte Funktionen einfach hinzuzufügen.
- Sicherheit: Enthält mehrere integrierte Sicherheitsfunktionen wie Eingabevalidierung, Ausgabe-Filterung und CSRF-Schutz.
- Starke Community-Unterstützung: Hat eine aktive Entwicklergemeinschaft und eine Fülle von Drittanbieter-Erweiterungen.
FuelPHP kann Entwicklern helfen, schnell leistungsstarke und qualitativ hochwertige Webanwendungen zu erstellen, die für Projekte unterschiedlicher Größen geeignet sind.
Erstellen und Ausführen eines FuelPHP-Projekts mit ServBay
In diesem Artikel verwenden wir die von ServBay bereitgestellte PHP-Umgebung, um ein FuelPHP-Projekt zu erstellen und auszuführen. Wir richten einen Webserver mit der "Host"-Funktion von ServBay ein und erreichen den Projektzugriff durch einfache Konfiguration.
Hinweis: Für Benutzer, die zuvor NGINX oder Apache verwendet haben
ServBay verwendet standardmäßig Caddy als Webserver. Für Benutzer, die von NGINX und Apache zu ServBay migrieren, gibt es einige wichtige Änderungen zu beachten:
Caddy-Konfiguration
ServBay hat Caddy integriert, und die Standardkonfiguration ist optimiert und debuggt. Entwickler müssen Websites nur über die "Host"-Funktion von ServBay verwalten, ohne die Caddy-Konfigurationsdatei manuell zu ändern.
Rewrite-Regeln und .htaccess
In NGINX und Apache müssen Entwickler normalerweise ihre eigenen Rewrite-Regeln und .htaccess-Dateien für URL-Rewriting und andere Konfigurationen schreiben. ServBay kommt jedoch mit vorgefertigten Caddy-Regeln, sodass Entwickler diese Regeln nicht schreiben müssen, es sei denn, es gibt spezielle Anforderungen.
Mehr erfahren
Für weitere Informationen verweisen wir auf Rewrite und htaccess, Wie man Apache-Websites zu ServBay migriert und Wie man NGINX-Websites zu ServBay migriert.
Erstellen eines FuelPHP-Projekts
TIP
ServBay empfiehlt, Websites im Verzeichnis /Applications/ServBay/www
zu platzieren, um die Verwaltung zu erleichtern.
Installieren Sie Composer
Composer ist mit ServBay vorinstalliert, sodass keine separate Installation erforderlich ist.
Erstellen Sie ein FuelPHP-Projekt
Verwenden Sie Composer, um ein neues FuelPHP-Projekt zu erstellen:
bashcd /Applications/ServBay/www mkdir servbay-fuelphp-app cd servbay-fuelphp-app composer create-project fuel/fuel .
1
2
3
4Navigieren Sie zum Projektverzeichnis
Betreten Sie das neu erstellte FuelPHP-Projektverzeichnis:
bashcd /Applications/ServBay/www/servbay-fuelphp-app
1
Erste Konfiguration
Datenbankverbindung konfigurieren
Konfigurieren Sie die Datenbankverbindungsinformationen in der Datei
fuel/app/config/development/db.php
:phpreturn [ 'default' => [ 'connection' => [ 'dsn' => 'mysql:host=localhost;dbname=fuel_dev', 'username' => 'root', 'password' => 'root', ], ], ];
1
2
3
4
5
6
7
8
9
Konfiguration des Webservers
Verwenden Sie die "Host"-Funktion von ServBay, um über einen Webserver auf das FuelPHP-Projekt zuzugreifen. Fügen Sie in den "Host"-Einstellungen von ServBay einen neuen Host hinzu:
- Name:
Meine erste FuelPHP-Entwicklungsseite
- Domain:
servbay-fuelphp-test.local
- Website-Typ:
PHP
- PHP-Version: wählen Sie
8.3
- Website-Root-Verzeichnis:
/Applications/ServBay/www/servbay-fuelphp-app/public
Für detaillierte Setup-Schritte verweisen wir auf Hinzufügen der ersten Website.
Hinzufügen von Beispielcode
Fügen Sie den folgenden Code in der Datei fuel/app/classes/controller/welcome.php
hinzu:
use Fuel\Core\Controller;
use Fuel\Core\Response;
use Fuel\Core\Cache;
use Fuel\Core\DB;
class Controller_Welcome extends Controller
{
public function action_index()
{
return Response::forge('Hallo ServBay!');
}
public function action_memcached()
{
Cache::set('key', 'Hallo Memcached!', 60);
$value = Cache::get('key');
return Response::forge($value);
}
public function action_redis()
{
Cache::set('key', 'Hallo Redis!', 60);
$value = Cache::get('key');
return Response::forge($value);
}
public function action_mysql_add()
{
DB::insert('users')->set([
'name' => 'ServBay',
'email' => '[email protected]',
])->execute();
return Response::forge('Benutzer hinzugefügt');
}
public function action_mysql()
{
$users = DB::select()->from('users')->execute()->as_array();
return Response::forge(json_encode($users));
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Zugriff auf die Website
Öffnen Sie Ihren Browser und besuchen Sie die folgende URL:
https://servbay-fuelphp-test.local
: Sie sehen die Seite, dieHallo ServBay!
ausgibt.
NoSQL-Datenbank-Beispiele
Memcached-Beispiel
Installieren Sie die Memcached-Erweiterung
Die Memcached-Erweiterung ist mit ServBay vorinstalliert, es ist keine zusätzliche Installation erforderlich.
Konfigurieren Sie Memcached
Konfigurieren Sie die Memcached-Verbindungsinformationen in der Datei
fuel/core/config/cache.php
:phpreturn [ 'driver' => 'memcached', 'memcached' => [ 'cache_id' => 'fuel', 'servers' => [ 'default' => [ 'host' => '127.0.0.1', 'port' => 11211, 'weight' => 100, ], ] ], ];
1
2
3
4
5
6
7
8
9
10
11
12
13
14Routen hinzufügen
Fügen Sie die folgenden Routen zu
fuel/app/config/routes.php
hinzu:phpreturn array( 'memcached' => 'welcome/memcached', )
1
2
3Verwendung von Memcached
Verwenden Sie den Cache im Controller:
phppublic function action_memcached() { Cache::set('key', 'Hallo Memcached!', 60); $value = Cache::get('key'); return Response::forge($value); }
1
2
3
4
5
6
7Öffnen Sie einen Browser und besuchen Sie https://servbay-fuelphp-test.local/memcached
Redis-Beispiel
Installieren Sie die Redis-Erweiterung
Die Redis-Erweiterung ist mit ServBay vorinstalliert, es ist keine zusätzliche Installation erforderlich.
Konfigurieren Sie Redis
Konfigurieren Sie die Redis-Verbindungsinformationen in der Datei
fuel/app/config/redis.php
:phpreturn [ 'driver' => 'redis', 'redis' => [ 'database' => 'default', ], ];
1
2
3
4
5
6Routen hinzufügen
Fügen Sie die folgenden Routen zu
fuel/app/config/routes.php
hinzu:phpreturn array( 'redis' => 'welcome/redis', )
1
2
3Verwendung von Redis
Verwenden Sie den Cache im Controller:
phppublic function action_redis() { Cache::set('key', 'Hallo Redis!', 60); $value = Cache::get('key'); return Response::forge($value); }
1
2
3
4
5
6
7Öffnen Sie einen Browser und besuchen Sie https://servbay-fuelphp-test.local/redis
Relationale Datenbank-Beispiele
MySQL-Beispiel
Konfigurieren Sie MySQL
Konfigurieren Sie die MySQL-Verbindungsinformationen in der Datei
fuel/app/config/development/db.php
:phpreturn [ 'default' => [ 'connection' => [ 'dsn' => 'mysql:host=localhost;dbname=fuel_dev', 'username' => 'root', 'password' => 'root', ], ], ];
1
2
3
4
5
6
7
8
9Erstellen Sie Migrationsdateien
Verwenden Sie das Öl-Werkzeug von FuelPHP, um Migrationsdateien zu erstellen:
bashphp oil g migration create_users_table
1Bearbeiten Sie die Migrationsdateien
Finden Sie die neu erstellte Migrationsdatei im Verzeichnis
fuel/app/migrations
und bearbeiten Sie sie, um die Tabellenstruktur der Datenbank zu definieren:php<?php namespace Fuel\Migrations; use Fuel\Core\DBUtil; class Create_users_table { public function up() { DBUtil::create_table('users', [ 'id' => ['type' => 'int', 'constraint' => 11, 'auto_increment' => true], 'name' => ['type' => 'varchar', 'constraint' => 100], 'email' => ['type' => 'varchar', 'constraint' => 100, 'unique' => true], ], ['id']); } public function down() { DBUtil::drop_table('users'); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21Migration ausführen
Verwenden Sie das Öl-Werkzeug von FuelPHP, um die Migration auszuführen und die Datenbanktabelle zu erstellen:
bashphp oil refine migrate
1Routen hinzufügen
Fügen Sie die folgenden Routen zu
fuel/app/config/routes.php
hinzu:phpreturn array( 'mysql_add' => 'welcome/mysql_add', 'mysql' => 'welcome/mysql', )
1
2
3
4Einfügen von Benutzerdaten
Fügen Sie Benutzerdaten im Controller ein:
phppublic function action_mysql_add() { DB::insert('users')->set([ 'name' => 'ServBay', 'email' => '[email protected]', ])->execute(); return Response::forge('Benutzer hinzugefügt'); }
1
2
3
4
5
6
7
8
9Verwendung von MySQL
Rufen Sie die Datenbank im Controller auf:
phppublic function action_mysql() { $users = DB::select()->from('users')->execute()->as_array(); return Response::forge(json_encode($users)); }
1
2
3
4
5
6Öffnen Sie einen Browser und besuchen Sie
https://servbay-fuelphp-test.local/mysql_add
undhttps://servbay-fuelphp-test.local/mysql
Durch die obigen Schritte haben Sie erfolgreich ein FuelPHP-Projekt mit den Funktionen von ServBay erstellt und ausgeführt, um Ihr Projekt zu verwalten und darauf zuzugreifen, während Sie mehrere Datenbanken verbinden und abfragen. Hoffentlich hilft Ihnen dieser Artikel, schnell mit FuelPHP zu beginnen und es in Ihren Projekten anzuwenden.