Position actuelle: Accueil> Derniers articles> Comment créer un framework personnalisé dans PHP: créez votre framework PHP à partir de zéro

Comment créer un framework personnalisé dans PHP: créez votre framework PHP à partir de zéro

M66 2025-06-16

Comment construire un cadre personnalisé dans PHP

Les cadres personnalisés sont l'un des besoins communs du développement Web. En construisant leurs propres cadres, les développeurs peuvent mieux répondre aux besoins des projets et améliorer l'efficacité du développement. Cet article vous montrera comment créer un cadre personnalisé simple dans PHP.

1. Structure du cadre

Un cadre PHP typique doit contenir les parties suivantes:

  1. Routeur: Responsable de la cartographie des URL aux contrôleurs et méthodes.
  2. Contrôleur: recevez et traitez la demande, obtenez des données en appelant le modèle, puis rendez la vue et renvoyez la réponse.
  3. Modèle: responsable de l'interaction avec la base de données, du traitement des opérations des données, de la suppression, de la modification et de la recherche.
  4. Voir: responsable de l'affichage des données et de l'affichage des résultats à l'utilisateur.
  5. Classe de base: comprend les fonctions principales du cadre, telles que la résolution de configuration, la gestion des erreurs, etc.

Ensuite, nous implémenterons progressivement un cadre personnalisé simple selon la structure ci-dessus.

2. Écrivez un routeur (routeur)

Le routeur détermine le contrôleur et la méthode correspondant à la demande en analysant l'URL.

classe Router {
    protégé $ contrôleur = 'defaultController';
    protégé $ action = 'INDEXACTION';

    Fonction publique handlerequest () {
        $ url = $ _server ['request_uri'];

        // analyser l'URL et obtenir le contrôleur et l'action
        $ parties = exploit ('/', $ url);
        if (isset ($ parties [1]) &&! vide ($ parties [1])) {
            $ this-> contrôleur = ucFirst ($ Parts [1]). 'Contrôleur';
        }

        if (isset ($ parties [2]) &&! vide ($ parties [2])) {
            $ this-> action = $ parties [2]. 'Action';
        }

        // Créez un objet de contrôleur et appelez la méthode correspondante $ contrôleur = new $ this-> contrôleur ();
        $ contrôleur -> {$ this-> action} ();
    }
}

3. Écrivez un contrôleur (contrôleur)

Le contrôleur reçoit et traite les demandes, puis appelle le modèle et la vue pour terminer l'opération.

class defaultController {
    IndexAction de la fonction publique () {
        Echo «Bonjour, bienvenue dans mon cadre personnalisé!»;
    }
}

4. Écrivez un modèle (modèle)

Le modèle est responsable de l'interaction avec la base de données et de la gestion des opérations des données, de la suppression, de la modification et de la recherche. Dans l'exemple suivant, nous ne montrons qu'une méthode de modèle simple, sans impliquer les opérations de base de données.

classe UserModel {
    Fonction publique getAllUsers () {
        Retour [
            ['id' => 1, 'name' => 'Alice'],
            ['id' => 2, 'name' => 'bob'],
            ['id' => 3, 'name' => 'Charlie'],
        ]]
    }
}

5. Écrivez une vue (vue)

La vue est responsable de l'affichage des données et de l'affichage des résultats à l'utilisateur.

Classe View {
    Fonction publique Rendu ($ data) {
        foreach ($ data as $ item) {
            echo &#39;id:&#39;. $ item [&#39;id&#39;]. &#39;, Nom: &#39; . $ item [&#39;name&#39;]. &#39;<br> &#39;;;
        }
    }
}

6. Intégrer tous les composants dans le fichier d'entrée

require_once &#39;router.php&#39;;
require_once &#39;contrôleur.php&#39;;
require_once &#39;Model.php&#39;;
require_once &#39;View.php&#39;;

$ routeur = nouveau routeur ();
$ router-> handlerequest ();

7. Exécutez le cadre

Enregistrez le code ci-dessus en tant qu'index.php et placez-le dans le répertoire racine du serveur Web. Visitez http: // localhost / pour voir le résultat de sortie.

Par exemple, visiter http: // localhost / user / getall affichera les résultats suivants:

ID: 1, nom: Alice
ID: 2, nom: Bob
ID: 3, nom: Charlie

Résumer

Cet article décrit comment créer un cadre personnalisé simple dans PHP. Un cadre mature contient généralement des composants tels que les routeurs, les contrôleurs, les modèles, les vues et les classes de base, et est capable de traiter les demandes et de générer des réponses.

Les cadres personnalisés peuvent aider les développeurs à mieux répondre aux besoins du projet et à améliorer l'efficacité du développement. J'espère que cet article vous aidera à comprendre comment construire votre propre cadre PHP.