Der schnellste Weg, um einfache Websites mit PHP zu erstellen!
Installation
Über Velox
Architektur
Konfiguration
Klassen
Funktionen
Befehle
Themen
Velox erweitern
MVC
Vorlagen
Authentifizierung
Changelog
Dokumentation
Wenn Sie dieses Projekt mögen und seine Entwicklung unterstützen möchten, wäre es geschätzt!

Schauen Sie sich die Demo an oder spielen Sie mit der Wiederholung .
Hast du Lust zu lesen? Schauen Sie sich die vollständige API auf der Dokumentations -Website unter marwanalsoltany.github.io/velox an.
composer create-project marwanalsoltany/velox my-velox-app HINWEIS: Möglicherweise müssen Sie je nach Version/Zweig den --stability=dev hinzufügen. Möglicherweise möchten Sie auch --no-dev Flag hinzufügen, um keine Entwicklungsabhängigkeiten zu installieren.
git clone https://github.com/MarwanAlsoltany/velox.git my-velox-appFakten: Wenn Sie keine anderen Drittanbieter -Pakete verwenden möchten. Die Installation von Velox mit Git ist ausreichend.
Laden Sie Velox als .zip oder .tar.gz herunter und extrahieren Sie es in Ihrem Server -Web -Root -Verzeichnis.
Ratschläge: Wenn Sie VELOX schnell testen möchten und keinen Webserver verfügbar haben, verwenden Sie die Installationsmethode und führen Sie php bin/app-serve in VELOX-Verzeichnis aus. In diesem Befehl wird ein Entwicklungs -Webserver auf localhost:8000 (beachten Sie, dass Sie mindestens PHP auf Ihrem System installieren müssen).
Velox ist ein leichtes Micro-Framework, das das Erstellen einer einfachen Website mit PHP Joyful macht. Es hilft Ihnen, zukunftssichere Websites schneller und effizienter zu erstellen. Es bietet Komponenten, die den Erstellen eines Website mit PHP ermöglichen. Velox hat keine Abhängigkeiten, das Velox -Paket und alles, was es braucht, ist im Projekt selbst enthalten. Alles, was Velox bietet, ist eine Möglichkeit, mit Konfiguration zu arbeiten, Daten zu übergeben, Routen zu registrieren, mit der Datenbank zu interagieren, Ansichten zu rendern, Ausnahmen zu handhaben, den Autodoadcode zu beheben und Assets zu lösen . Es bietet die Ansicht und die Controller -Teile eines MVC -Entwurfsmusters. Velox starrt aus v1.3.0 und bietet auch das Modellteil und macht es zu einem vollständig vorgestellten MVC -Framework und startet von v1.4.0 , es wird auch mit einem einfachen Authentifizierungssystem versendet. Velox kann auch als statischer Site -Generator verwendet werden, wenn Sie am Ende nur HTML -Dateien benötigen.
Velox wurde erstellt, um ein bestimmtes Problem zu lösen. Es ist eine Möglichkeit, eine Website zu erstellen, die zwischen dynamisch und statisch ist, eine Möglichkeit, eine einfache Website mit wenigen Seiten zu erstellen, ohne gezwungen zu werden, ein Framework oder ein CMS mit einer Menge von Dingen zu verwenden, die niemals verwendet werden, es ist leicht, minimal und direkt auf den Punkt.
Es wird nicht empfohlen, VELOX zu verwenden, wenn Sie ein Vermittlerprojekt haben. Sie wären besser dran, ein gut etabliertes Framework zu verwenden. Velox ist keine Initiative, um das Rad neu zu erfinden. Sie können Velox als Starter-Kit für kleine Projekte betrachten.
Velox hat einen ganz besonderen Anwendungsfall, einfache Websites, und hier sind wirklich einfache Websites gemeint. Der Vorteil ist, dass Sie keine Sachen haben, die Sie nicht brauchen. Der Vergleich von Velox mit Laravel oder Symfony ist irrelevant, da diese Frameworks in einem völlig anderen Bereich spielen, erwähnenswert, dass Velox viel einfacher ist als Lumen oder Slim.
| Verzeichnis | Beschreibung |
|---|---|
bootstrap | Hier startet Velox die Anwendung. Normalerweise müssen Sie in diesem Verzeichnis nichts ändern, es sei denn, Sie möchten die Velox -Funktionalität über grundlegende Dinge hinaus erweitern. |
bin | Hier werden PHP -ausführbare Säle platziert. Sie können Ihre frei hinzufügen oder das gesamte Verzeichnis löschen. |
app | Hier wird Ihre eigene Backend -Logik platziert. Sie werden hier hauptsächlich für den Backend -Teil Ihrer App arbeiten. |
classes | Hier live Velox -Quelldateien. Sie sollten hier nichts berühren, es sei denn, Sie möchten Ihre eigene Version von Velox erstellen. |
functions | Hier sind alle Funktionen, die in der Anwendung live geladen werden. Sie können Ihre frei hinzufügen oder das gesamte Verzeichnis löschen. |
includes | Hier werden alle Dateien vorgeladen. Sie können Ihre frei hinzufügen oder das gesamte Verzeichnis löschen. |
themes | Hier werden alle Ihre Frontend -Themen platziert. Sie werden hier hauptsächlich für den Frontend -Teil Ihrer App arbeiten. |
config | Hier leben alle Konfigurationsdateien. Alle Dateien hier sind mit der Config zur Laufzeit zugegriffen. |
storage | Hier schreibt Velox Caches und Protokolle. Sie können dieses Verzeichnis auch verwenden, um installationsweite Vermögenswerte zu speichern. |
public | Hier sollten Sie Ihren index.php mit einem Symlink für statische Assets (zum Beispiel aktives assets/ Verzeichnis) für maximale Sicherheit einsetzen. Sie können dieses Verzeichnis frei löschen, wenn Sie möchten. |
vendor | Hier werden Ihre Komponistenabhängigkeiten platziert. Sie können dieses Verzeichnis frei löschen, wenn Sie keinen Komponisten verwenden möchten. |
Ratschläge: Die meisten in diesen Verzeichnissen aufgeführten Dateien sind dokumentiert. Schauen Sie sich sie durch, um mehr über Velox zu erfahren.
Der Einstiegspunkt für eine Velox -App ist der index.php . Hier müssen Sie die bootstrap/autoload.php benötigen, einige Routen mit ihren Handlern mithilfe der Router::class registrieren und den Router starten. Dies ist alles, was Sie brauchen, um eine funktionierende Velox -App zu haben.
<?php
require ' bootstrap/autoload.php ' ;
Router:: handle ( ' / ' , function () {
return View:: render ( ' home ' , [ ' title ' => ' Home ' ]);
});
Router:: start (); Zusätzlich können Sie Middlewares mit Router::middleware() und/oder Handlern für 404 und 405 Antworten mit {global.errorPages.CODE} -Konfigurationswert hinzufügen.
Alternativ können Sie den "Routes -Registrierungsteil" in seiner eigenen Datei extrahieren und Velox mithilfe von bootstrap/additional.php darüber informieren. Ab v1.2.0 VELOX macht die Datei standardmäßig in der Datei includes/routes/web.php Ihre Routen registrieren. Der Router startet auch automatisch, wenn sie nicht explizit gestartet werden.
Hinweis: Damit Velox korrekt und sicher funktioniert, müssen Sie alle Anforderungen an den Einstiegspunkt der Anwendung ( index.php ) umleiten und alle Anforderungen an andere PHP -Dateien auf dem Server blockieren (schauen Sie sich .htaccess.dist an, um mit Apache zu beginnen).
In der folgenden Tabelle werden alle mit Velox gelieferten Konfigurationsdateien aufgeführt.
| Konfigurationsdatei | Beschreibung |
|---|---|
global.php | Diese Konfigurationsdatei enthält einige globale Variablen, die von fast allen Klassen (App-Wide Config) verwendet werden. |
router.php | Diese Konfigurationsdatei kann verwendet werden, um Router::class Standardparameter zu überschreiben. |
session.php | Diese Konfigurationsdatei enthält eine Sitzungskonfiguration. Sie wird von der Session::class verwendet. |
database.php | Diese Konfigurationsdatei enthält Datenbank -Anmeldeinformationen, die von der Database::class . |
auth.php | Diese Konfigurationsdatei enthält eine Authentifizierungskonfiguration, die von der Auth::class verwendet wird. |
theme.php | Diese Konfigurationsdatei kann zum Bearbeiten/Erweitern von Themenkonfiguration verwendet werden. |
view.php | Diese Konfigurationsdatei kann verwendet werden, um alles über die Ansichten anzupassen. Es wird von der View::class verwendet. |
data.php | Diese Konfigurationsdatei kann verwendet werden, um beliebige Daten bereitzustellen, die dann in die Data::class injiziert werden. |
cli.php | Diese Konfigurationsdatei kann verwendet werden, um die Befehle zu aktivieren/zu deaktivieren oder ihre Argumente zu ändern. |
Fakt: Sie können auch Ihre eigenen Konfigurationsdateien frei hinzufügen. Sie müssen lediglich eine neue Datei unter /config erstellen und Ihre Konfiguration hinzufügen. Velox wird über diese Datei informiert und in der Anwendung geladen. Sie können auf Ihre Konfiguration über Config::get('filename.whateverKeyYouWrote') zugreifen.
Velox -Klassen sind in vier Namespaces geteilt:
MAKSVeloxMAKSVeloxBackendMAKSVeloxFrontendMAKSVeloxHelperIn der folgenden Tabelle werden alle verfügbaren Klassen mit ihrer Beschreibung aufgeführt:
| Klasse | Beschreibung |
|---|---|
VeloxApp | Eine Klasse, die als grundlegender Service-Container für Velox dient. |
BackendEvent | Eine Klasse, die einfache Funktionen zur Bearbeitung von Veranstaltungen bietet (Versand und Hören). |
BackendConfig | Eine Klasse, die alles aus dem Verzeichnis /config lädt und es als ein Array erstellt, auf das über Dot-NOTATION zugegriffen werden kann. |
BackendRouter | Eine Klasse, die als Router und Einstiegspunkt für die Anwendung dient. |
BackendGlobals | Eine Klasse, die als Abstraktion/Wrapper dient, um mit Superglobals zu arbeiten. |
BackendSession | Eine Klasse, die eine einfache Schnittstelle bietet, um mit Sitzungen zu arbeiten. |
BackendController | Eine abstrakte Klasse, die als Basicontroller dient, die erweitert werden kann, um Handler für den Router herzustellen. |
BackendDatabase | Eine Klasse, die die Datenbank repräsentiert und Datenbankvorgänge übernimmt. |
BackendModel | Eine abstrakte Klasse, die als Basismodell dient, das erweitert werden kann, um benutzerdefinierte Modelle zu erstellen. |
BackendAuth | Eine Klasse, die als Authentifizierungssystem für Benutzer dient. |
FrontendData | Eine Klasse, die als abstrahierter Datenbeutel/-speicher dient, die über DOT-NOTATION zugänglich ist. |
FrontendView | Eine Klasse, in der Dateien (Layouts, Seiten und Teils) angezeigt werden, um zusätzliche Dateien einzubeziehen, Seiteninhalte in Abschnitte und cache -gerenderte Ansichten einzugeben. |
FrontendHTML | Eine Klasse, die als fließende Schnittstelle dient, um HTML in PHP zu schreiben. Es hilft auch beim Erstellen von HTML -Elementen im laufenden Fliegen. |
FrontendPath | Eine Klasse, die als Pfadregelung für verschiedene Pfade/URLs der App dient. |
HelperDumper | Eine Klasse, die Variablen und Ausnahme in einer schönen Formatierung abgelegt hat. |
HelperMisc | Eine Klasse, die als Inhaber für verschiedene verschiedene Versorgungsfunktionen dient. |
HINWEIS: Dies alles, was das Velox -Paket außerhalb der Box bietet.
Fakt: Die App , Event , Config , Router , Globals , Session , Database , Auth , Data , View , HTML , Path sind im Stammnamenspace für die Benutzerfreundlichkeit aliaisiert.
Velox -Funktionen werden in diese Dateien unterteilt:
helpers.php : Hier leben Helferfunktionen für Velox -Klassen, dies sind hauptsächlich Funktionen, die eine Instanz von Klassen oder Alias eine Methode zurückgeben.html.php : Hier leben HTML -Helferfunktionen, dies sind nichts anderes als Aliase für die am häufigsten verwendeten PHP -Funktionen mit HTML.In der folgenden Tabelle werden alle verfügbaren Funktionen aufgeführt und zu welcher Klasse/Gruppe sie gehören:
| Klasse/Gruppe | Funktion (en) |
|---|---|
App::class | app() ,abort() ,,terminate() |
Event::class | event() |
Config::class | config() |
Router::class | router() ,handle() ,redirect() ,forward() |
Database::class | database() |
Globals::class | globals() |
Session::class | session() ,flash() ,csrf() |
Auth::class | auth() |
View::class | view() ,render() ,,render_layout() ,render_page() ,render_partial() ,section_push() ,section_reset() ,section_start() ,section_end() ,section_yield() ,include_file() |
Data::class | data() ,,data_has() ,data_get() ,data_set() |
HTML::class | html() |
Path::class | path() ,app_path_current() ,app_url_current() ,app_path() ,app_url() ,theme_path() ,theme_url() ,assets_path() ,assets_url() |
Dumper::class | dd() ,dump() ,dump_exception() |
| HTML -Helfer | he() , hd() , hse() , hsd() , st() , nb() |
Fakt: Sie können auch Ihre eigenen Funktionen frei hinzufügen. Alles, was Sie tun müssen, ist, eine neue Datei unter /functions zu erstellen und Ihre Funktionen hinzuzufügen. Velox wird über diese Datei informiert und in der Anwendung geladen.
Velox verfügt über einige praktische Befehle, mit denen Sie einige wiederholte Aufgaben erledigen können. Sie können diese Befehle mit dem php bin/{command-name} ausführen.
In der folgenden Tabelle werden alle verfügbaren Befehle mit ihrer Beschreibung aufgeführt.
| Befehl | Beschreibung |
|---|---|
app-serve | Dieser Befehl startet einen Entwicklungsserver. |
app-mirror | Dieser Befehl spiegelt die Anwendung im /public Verzeichnis wider. |
config-cache | Dieser Befehl zwischengespeichert die aktuelle Konfiguration. |
config-dump | Dieser Befehl bringt die aktuelle Konfiguration mit Syntax -Hervorhebung ab. |
cache-clear | Dieser Befehl löscht Caches. |
Sie können diese Befehle mit der Datei config/cli.php anpassen. Hier können Sie sie aktivieren/deaktivieren oder ihnen unterschiedliche Argumente vorlegen.
Wenn Sie alle diese Befehle über eine einzelne Schnittstelle zugänglich machen möchten. Schauen Sie sich meine andere Paketmischung an, die das für Sie und noch mehr tun wird.
Velox basiert auf der Idee der Themen , ein Thema ist in vier Verzeichnisse unterteilt:
assets/ Verzeichnis werden alle mit diesem Thema verbundenen statischen Vermögenswerte platziert.layouts/ Verzeichnissen definieren Sie Ihre Layouts. Ein Layout in der Velox -Terminologie ist das äußere Rahmen einer Webseite.pages/ Verzeichnissen werden Sie den inhaltspezifischen Inhalt auf jede Seite einfügen. Die Seite wird dann mit einem Layout Ihrer Wahl eingewickelt und schließlich wiedergegeben. Eine Seite in der Velox -Terminologie ist der tatsächliche Inhalt einer Webseite.partials/ Verzeichnis werden Sie alle Ihre wiederverwendbaren Teile des Themas einstellen, die dann in Ihren Layouts, Seiten oder anderen Teilern verwendet werden. Ein gutes Beispiel für Teilungen könnte sein: Komponenten , einschließlich und Inhaltselemente . Sie können das Verhalten von Themen mit der Datei config/theme.php anpassen. Hier können Sie das aktive Thema mit dem active Schlüssel festlegen. Themen können voneinander erben, indem übergeordnete (en) mit dem parent Schlüssel eingestellt werden. Sie können auch die Themenverzeichnisstruktur ändern, wenn Sie den paths verwenden möchten. Andere Konfigurationen (zum Beispiel Caching), die es wert sind, einen Blick darauf zu werfen, welche mit Themen zu tun haben, finden Sie in der Datei config/view.php .
Ratschläge: Sie können sich das bereitgestellte velox -Thema ansehen, um zu sehen, wie alle Dinge in der Praxis zusammenarbeiten.
themes/velox/layouts/main.phtmlthemes/velox/pages/home.phtmlthemes/velox/partials/text-image.phtml Um Ihre eigenen Klassen hinzuzufügen, verwenden Sie die app/ das Verzeichnis. Hier sollten Sie Ihre eigene Geschäftslogik einsetzen. Beachten Sie, dass Sie PSR-4 folgen müssen, damit Velox Ihre Klassen lädt. Siehe app/Controller/DefaultController.php , um eine Idee zu erhalten.
Hier finden Sie eine Liste einiger wichtiger Dateien, die Sie bei der Arbeit mit Velox berücksichtigen sollten:
autoload/additional.php .config/data.php .includes/routes/web.php (ab v1.2.0 ).includes/events/system.php (ab v1.2.0 ). <?php
namespace App Model ;
use MAKS Velox Backend Model ;
class Person extends Model
{
protected static ? string $ table = ' persons ' ;
protected static ? array $ columns = [ ' id ' , ' first_name ' , ' last_name ' , ' age ' , ...];
protected static ? string $ primaryKey = ' id ' ;
public static function schema (): string
{
// return SQL to create the table
}
} <?php
use App Model Person ;
// creating/manipulating models
$ person = new Person (); // set attributes later via setters or public assignment.
$ person = new Person([ ' first_name ' => $ value , . . . ]); // set attributes in constructor
$ person -> get ( ' first_name ' ); // get an attribute
$ person -> set ( ' last_name ' , $ value ); // set an attribute
$ person -> getFirstName (); // case will be changed to 'snake_case' automatically.
$ person -> setLastName ( $ value ); // case will be changed to 'snake_case' automatically.
$ person -> firstName ; // case will be changed to 'snake_case' automatically.
$ person -> lastName = $ value ; // case will be changed to 'snake_case' automatically.
$ attributes = $ person -> getAttributes (); // returns all attributes.
$ person -> save (); // persists the model in the database.
$ person -> update ([ ' first_name ' => $ value ]); // updates the model and save changes in the database.
$ person -> delete (); // deletes the model from the database.
Person:: create ( $ attributes ); // creates a new model instance, call save() on the instance to save it in the database.
Person:: destroy ( $ id ); // destroys a model and deletes it from the database.
// fetching models
$ count = Person:: count (); // returns the number of models in the database.
$ person = Person:: first ();
$ person = Person:: last ();
$ person = Person:: one ([ ' first_name ' => ' John ' ]);
$ persons = Person:: all ([ ' last_name ' => ' Doe ' ], $ order , $ offset , $ limit );
$ person = Person:: find ( $ id ); // $id is the primary key of the model.
$ persons = Person::find( ' first_name ' , ' John ' , ' last_name ' , ' Doe ' . . .); // or
$ persons = Person:: find ([ ' first_name ' => ' John ' , ' last_name ' => ' Doe ' ]);
$ persons = Person:: findByFirstName ( ' John ' ); // fetches using an attribute, case will be changed to 'snake_case' automatically.
$ persons = Person:: where ( ' first_name ' , ' = ' , $ value ); // fetches using a where clause condition.
$ persons = Person:: where ( ' last_name ' , ' LIKE ' , ' %Doe ' , [[ ' AND ' , ' age ' , ' > ' , 27 ], ...], ' age DESC ' , $ limit , $ offset );
$ persons = Person:: fetch ( ' SELECT * FROM @table WHERE `first_name` = ? ' , [ $ value ]); // fetch using raw SQL query. <?php
namespace App Controller ;
use MAKS Velox Backend Controller ;
use App Model Person ;
class PersonsController extends Controller
{
public function indexAction ()
{
$ persons = Person:: all ();
return $ this -> view -> render ( ' persons/index ' , [
' title ' => ' Persons ' ,
' persons ' => $ persons
]);
}
// other CRUD actions ...
/**
* Persons search action.
*
* @route("/persons/search", {GET})
*/
public function searchAction ()
{
// ...
}
/**
* Persons middleware.
*
* @route("/persons/*", {GET, POST})
*/
public function personsMiddleware ()
{
// ...
}
} Fakt: CRUD -Operationen (nämlich: index , create , store , show , edit , update , destroy ) sind standardmäßig registriert und konfiguriert. Um Ihre eigenen Routen automatisch zu registrieren, verwenden Sie die Annotation von @route("<path>", {<http-verb>, ...}) . Siehe Controller::registerRoutes() docBlock, um mehr zu erfahren.
Fakt: Um das Modell als Eigenschaft für den Controller verfügbar zu machen ( $this->model ), verwenden Sie Controller::associateModel() . Siehe Controller::associateModel() docBlock, um mehr zu erfahren.
Ratschläge: Wenn im Produktionsmodus als Verknüpfung eine Ausnahme mit einem Code -Matching {global.errorPages.CODE} Konfigurationswert veranstaltet, rendert die entsprechende Fehlerseite. Wenn Sie beispielsweise new Exception('Not found', 404) aus dem Controller ausführen, wird die konfigurierte 404 -Fehlerseite gerendert und die Ausnahmenachricht übergeben. Wenn die Seite nicht konfiguriert ist, wird die 500 -Fehlerseite stattdessen als Fallback gerendert.
Velox hat keine Möglichkeit, Daten zu validieren. Schauen Sie sich mein anderes Paket Mighty an, das das für Sie und noch mehr tun wird.
{# theme/pages/persons/index.phtml #}
{! @extends 'theme/pages/persons/base' !}
{! @block content !}
{! @super !}
< h1 > {{ $title } } </ h1 >
{! @if ( isset ( $persons ) && count ( $persons ) ) !}
< ul >
{! @foreach ( $persons as $person ) !}
< li > {{ $person -> firsName } } {{ $person -> lastName } } </ li >
{! @endforeach !}
</ ul >
{! @endif !}
{! @endblock !} Ratschläge: Schauen Sie sich das Person und den PersonsController an, um ein realistisches Beispiel zu sehen.
Velox wird mit einem eigenen Vorlagenmotor geliefert. Dieser Vorlagenmotor ist sehr intuitiv und einfach zu verstehen, wenn Sie Erfahrung mit einem anderen Vorlagenmotor haben, zu lernen, dass dies eine Frage von Minuten dauern würde. Beachten Sie, dass die Verwendung dieser Vorlagenmotor optional ist. Sie können einfach RAW -PHP in Ihren Ansichten verwenden.
In der folgenden Tabelle werden alle verfügbaren Tags und ihre Tätigkeiten aufgeführt:
| Etikett | Beschreibung |
|---|---|
{! @extends 'path/to/template' !} | Erweitern Sie eine Vorlage, Blöcke dieser Vorlage werden vererbt. |
{! @include 'path/to/file' !} | Fügen Sie eine Datei hinzu, die vor der Aufnahme gerendert wird (kann nicht auf Kontextvariablen zugreifen). |
{! @embed 'path/to/file' !} | Einbetten Sie eine Datei ein, die so berücksichtigt werden, wie es ist (kann auf Kontextvariablen zugreifen). |
{! @block name !}{! @endblock !} | Erstellen Sie einen Block, um einen Code einzuwickeln. |
{! @super !} | Verwenden Sie es in einem Block in einer erweiterten Vorlage, um übergeordnete Blockinhalte zu erben. |
{! @block(name) !} | Einen Block drucken. Muss mindestens einmal aufgerufen werden, um einen Block zu rendern. |
{! @foreach ($vars as $var) !}{! @endforeach !} | Kontrollstrukturen (Schleifen, wenn Aussagen, ...). Alle PHP -Kontrollstrukturen sind verfügbar ( if else , elseif , do while , for foreach , continue , switch , break , return , require , include ) mit derselben Syntax, aber einfach mit einem @ -Symbol vorangestellt sind, wenn eine Steuerstruktur das erste Wort im Tag ist. |
{! $var = '' !} | Variable Zuordnungen. Inhalt kann eine Variable oder eine gültige PHP -Expression sein. |
{{ $var }} | Drucken Sie eine Variable. Der Inhalt kann eine Variable oder jeder PHP -Ausdruck sein, der in eine Zeichenfolge gegossen werden kann. |
{{{ $var }}} | Drucken Sie eine Variable, ohne zu entkommen. Der Inhalt kann eine Variable oder jeder PHP -Ausdruck sein, der in eine Zeichenfolge gegossen werden kann. |
{# This is a comment #} | Etwas kommentieren. Dies ist ein PHP -Kommentar (wird in der endgültigen HTML nicht verfügbar sein). |
Ratschläge: Schauen Sie sich die Ansichten von persons von PersonsController im Velox -Thema an, um ein realistisches Beispiel zu erhalten.
Ausgehend von v1.4.0 Velox wird mit einem einfachen integrierten Authentifizierungssystem versendet. Dieses System ist sehr einfach und einfach zu bedienen.
<?php
use MAKS Velox Backend Auth ;
// instantiate the Auth class
$ auth = new Auth (); // or Auth::instance();
// register a new user
$ status = $ auth -> register ( ' username ' , ' password ' );
// unregister a user
$ status = $ auth -> unregister ( ' username ' );
// log in a user
$ status = $ auth -> login ( ' username ' , ' password ' );
// log out a user
$ auth -> logout ();
// authenticate a user model
Auth:: authenticate ( $ user );
// check if there is a logged in user
$ status = Auth:: check ();
// retrieve the current authenticated user
$ user = Auth:: user ();
// add HTTP basic auth
Auth:: basic ([ ' username ' => ' password ' ]); Ratschläge: Schauen Sie sich den UsersController an, um ein realistisches Beispiel zu sehen.
Velox ist ein Open-Source-Projekt, das nach der MIT- Lizenz lizenziert wurde.
Copyright (C) 2021 Marwan al-Soltany. Alle Rechte vorbehalten.