Maison cadre php YII Comment le framework Yii accède-t-il au contrôleur sous le module personnalisé ?

Comment le framework Yii accède-t-il au contrôleur sous le module personnalisé ?

Feb 26, 2020 pm 02:42 PM
controller yii

Comment le framework Yii accède-t-il au contrôleur sous le module personnalisé ?

Question :

Comment accéder aux actions dans le contrôleur de Site ? Comme le montre l'image :

Comment le framework Yii accède-t-il au contrôleur sous le module personnalisé ?

Solution :

1 Créez un répertoire

Créez d'abord la structure de répertoires comme ci-dessus, puis le. répertoire sous l'api Il y a trois dossiers et un fichier Module.php Le contenu de ce fichier php est le suivant :

<?php

namespace app\modules\api;

/**
 * api module definition class
 */
class Module extends \yii\base\Module
{
    /**
     * @inheritdoc
     */
    public $controllerNamespace = &#39;app\modules\api\controllers&#39;;

    /**
     * @inheritdoc
     */
    public function init()
    {
        parent::init();

        // custom initialization code goes here
    }
}
Copier après la connexion

(Tutoriel recommandé : yii framework)

<🎜. >2. web.php

N'oubliez pas qu'il existe un fichier web.php dans le dossier config du répertoire racine du projet :

<?php

$params = require __DIR__ . &#39;/params.php&#39;;
$db = require __DIR__ . &#39;/db.php&#39;;

$config = [
    &#39;id&#39; => &#39;basic&#39;,
    &#39;basePath&#39; => dirname(__DIR__),
    &#39;bootstrap&#39; => [&#39;log&#39;],
    &#39;aliases&#39; => [
        &#39;@bower&#39; => &#39;@vendor/bower-asset&#39;,
        &#39;@npm&#39;   => &#39;@vendor/npm-asset&#39;,
    ],
    &#39;components&#39; => [
        &#39;request&#39; => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            &#39;cookieValidationKey&#39; => &#39;jjsYJ_ju0W8ifOv5mY3JBMI6DOppFlo6&#39;,
        ],
        &#39;cache&#39; => [
            &#39;class&#39; => &#39;yii\caching\FileCache&#39;,
        ],
        &#39;user&#39; => [
            &#39;identityClass&#39; => &#39;app\models\User&#39;,
            &#39;enableAutoLogin&#39; => true,
        ],
        &#39;errorHandler&#39; => [
            &#39;errorAction&#39; => &#39;site/error&#39;,
        ],
        &#39;mailer&#39; => [
            &#39;class&#39; => &#39;yii\swiftmailer\Mailer&#39;,
            // send all mails to a file by default. You have to set
            // &#39;useFileTransport&#39; to false and configure a transport
            // for the mailer to send real emails.
            &#39;useFileTransport&#39; => true,
        ],
        &#39;log&#39; => [
            &#39;traceLevel&#39; => YII_DEBUG ? 3 : 0,
            &#39;targets&#39; => [
                [
                    &#39;class&#39; => &#39;yii\log\FileTarget&#39;,
                    &#39;levels&#39; => [&#39;error&#39;, &#39;warning&#39;],
                ],
            ],
        ],
        &#39;db&#39; => $db,
        /*
        &#39;urlManager&#39; => [
            &#39;enablePrettyUrl&#39; => true,
            &#39;showScriptName&#39; => false,
            &#39;rules&#39; => [
            ],
        ],
        */
    ],
    &#39;modules&#39; => [
        &#39;api&#39; => [
            &#39;class&#39; => &#39;app\modules\api\Module&#39;,
        ],
    ],
    &#39;params&#39; => $params,
];

if (YII_ENV_DEV) {
    // configuration adjustments for &#39;dev&#39; environment
    $config[&#39;bootstrap&#39;][] = &#39;debug&#39;;
    $config[&#39;modules&#39;][&#39;debug&#39;] = [
        &#39;class&#39; => &#39;yii\debug\Module&#39;,
        // uncomment the following to add your IP if you are not connecting from localhost.
        //&#39;allowedIPs&#39; => [&#39;127.0.0.1&#39;, &#39;::1&#39;],
    ];

    $config[&#39;bootstrap&#39;][] = &#39;gii&#39;;
    $config[&#39;modules&#39;][&#39;gii&#39;] = [
        &#39;class&#39; => &#39;yii\gii\Module&#39;,
        // uncomment the following to add your IP if you are not connecting from localhost.
        //&#39;allowedIPs&#39; => [&#39;127.0.0.1&#39;, &#39;::1&#39;],
    ];
}

return $config;
Copier après la connexion

3. composant api

Nous sommes maintenant dans Créer un nouveau SiteControllers.php sous Modules/api/controllers, avec le contenu suivant :

<?php

namespace app\modules\api\controllers;

use yii\web\Controller;


class SiteController extends Controller
{
    public function actionIndex()
    {
        echo "hello world";
    }
}
Copier après la connexion
Accès au navigateur

Enfin, le Le navigateur accède à cet actionIndex et le navigateur saisit : http://localhost/basic/web/index.php?r=api/site/index

Comment le framework Yii accède-t-il au contrôleur sous le module personnalisé ?

Terminé !

Pour plus de contenu lié à la programmation, veuillez faire attention à la colonne

Introduction à la programmation sur le site Web PHP chinois !

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre le problème selon lequel SpringBoot ne peut pas analyser le contrôleur Comment résoudre le problème selon lequel SpringBoot ne peut pas analyser le contrôleur May 14, 2023 am 08:10 AM

Lorsqu'un novice SpringBoot crée un projet, le contrôleur ne peut pas être analysé et une série de problèmes sont 1.2.3.4.5.6. Une autre façon consiste à ajouter @ComponentScan(basePackages={"xxx.xxx.xx","xxx.xxx" lorsque. démarrage de la classe de service) .xx”}) est le nom complet du package, qui peut être utilisé pour plusieurs contrôleurs personnalisés SpringBoot. La route du contrôleur personnalisé SpringBoot ne peut pas être analysée et introuvable car la classe de démarrage et le package de contrôleur personnalisé. ne sont pas dans le même répertoire. Emplacement officiellement recommandé de application.java

Comment ajouter un préfixe d'URL à plusieurs contrôleurs SpringBoot Comment ajouter un préfixe d'URL à plusieurs contrôleurs SpringBoot May 12, 2023 pm 06:37 PM

Préface Dans certains cas, les préfixes du contrôleur de service sont cohérents. Par exemple, le préfixe de toutes les URL est /context-path/api/v1 et un préfixe unifié doit être ajouté à certaines URL. La solution envisageable consiste à modifier le chemin contextuel du service et à ajouter api/v1 au chemin contextuel. La modification du préfixe global peut résoudre le problème ci-dessus, mais il existe des inconvénients si l'URL a plusieurs préfixes, par exemple certains. Les URL nécessitent des préfixes. S'il s'agit de api/v2, il ne peut pas être distingué. Si vous ne souhaitez pas ajouter api/v1 à certaines ressources statiques du service, il ne peut pas être distingué. Ce qui suit utilise des annotations personnalisées pour ajouter uniformément certains préfixes d'URL. un,

Comment utiliser le framework PHP Yii pour développer un système de sauvegarde cloud hautement disponible Comment utiliser le framework PHP Yii pour développer un système de sauvegarde cloud hautement disponible Jun 27, 2023 am 09:04 AM

Avec le développement continu de la technologie du cloud computing, la sauvegarde des données est devenue quelque chose que chaque entreprise doit faire. Dans ce contexte, il est particulièrement important de développer un système de sauvegarde cloud hautement disponible. Le framework PHP Yii est un framework puissant qui peut aider les développeurs à créer rapidement des applications Web hautes performances. Ce qui suit explique comment utiliser le framework Yii pour développer un système de sauvegarde cloud hautement disponible. Conception du modèle de base de données Dans le framework Yii, le modèle de base de données est une partie très importante. Parce que le système de sauvegarde des données nécessite beaucoup de tables et de relations

Symfony vs Yii2 : quel framework est le meilleur pour développer des applications Web à grande échelle ? Symfony vs Yii2 : quel framework est le meilleur pour développer des applications Web à grande échelle ? Jun 19, 2023 am 10:57 AM

Alors que la demande d'applications Web continue de croître, les développeurs ont de plus en plus de choix dans le choix des frameworks de développement. Symfony et Yii2 sont deux frameworks PHP populaires. Ils ont tous deux des fonctions et des performances puissantes, mais face à la nécessité de développer des applications Web à grande échelle, quel framework est le plus adapté ? Nous procéderons ensuite à une analyse comparative de Symphony et Yii2 pour vous aider à faire un meilleur choix. Présentation de base Symphony est un framework d'application Web open source écrit en PHP et basé sur

Requête de données dans le framework Yii : accédez efficacement aux données Requête de données dans le framework Yii : accédez efficacement aux données Jun 21, 2023 am 11:22 AM

Le framework Yii est un framework d'application Web PHP open source qui fournit de nombreux outils et composants pour simplifier le processus de développement d'applications Web, dont la requête de données est l'un des composants importants. Dans le framework Yii, nous pouvons utiliser une syntaxe de type SQL pour accéder à la base de données afin d'interroger et de manipuler les données efficacement. Le générateur de requêtes du framework Yii comprend principalement les types suivants : requête ActiveRecord, requête QueryBuilder, requête de commande et requête SQL originale.

Comment utiliser le framework Yii3 en php ? Comment utiliser le framework Yii3 en php ? May 31, 2023 pm 10:42 PM

À mesure qu’Internet continue de se développer, la demande de développement d’applications Web augmente également. Pour les développeurs, le développement d'applications nécessite un cadre stable, efficace et puissant, qui peut améliorer l'efficacité du développement. Yii est un framework PHP hautes performances de premier plan qui offre des fonctionnalités riches et de bonnes performances. Yii3 est la version nouvelle génération du framework Yii, qui optimise davantage les performances et la qualité du code basé sur Yii2. Dans cet article, nous présenterons comment utiliser le framework Yii3 pour développer des applications PHP.

Yii2 vs Phalcon : quel framework est le meilleur pour développer des applications de rendu graphique ? Yii2 vs Phalcon : quel framework est le meilleur pour développer des applications de rendu graphique ? Jun 19, 2023 am 08:09 AM

À l’ère actuelle de l’information, le big data, l’intelligence artificielle, le cloud computing et d’autres technologies sont devenus au centre des préoccupations des grandes entreprises. Parmi ces technologies, la technologie de rendu des cartes graphiques, en tant que technologie de traitement graphique haute performance, fait l'objet de plus en plus d'attention. La technologie de rendu des cartes graphiques est largement utilisée dans le développement de jeux, les effets spéciaux de films et de télévision, la modélisation technique et d'autres domaines. Pour les développeurs, choisir un framework adapté à leurs projets est une décision très importante. Parmi les langages actuels, PHP est un langage très dynamique. Quelques excellents frameworks PHP comme Yii2, Ph.

Solution à l'erreur fatale PHP : classe « Contrôleur » introuvable Solution à l'erreur fatale PHP : classe « Contrôleur » introuvable Jun 22, 2023 pm 03:13 PM

Lorsque vous utilisez le framework PHP, vous rencontrez souvent des erreurs telles que "PHPFatalerror: Class'Controller'notfound". Ce genre d'erreur est généralement liée à la dénomination, à l'emplacement ou au chargement des fichiers dans le framework, notamment lorsque vous essayez d'utiliser des contrôleurs. Cet article présentera plusieurs méthodes de traitement courantes pour résoudre ce problème. Confirmer l'emplacement du fichier Tout d'abord, vous devez confirmer que le fichier du contrôleur se trouve dans le répertoire approprié pour le framework. Par exemple, si vous utilisez le framework Laravel

See all articles