Comment générer automatiquement des modules et des répertoires dans Thinkphp5.0

不言
Libérer: 2023-03-30 13:54:01
original
2380 Les gens l'ont consulté

Cet article présente principalement la méthode de génération automatique de modules et de répertoires dans Thinkphp5.0, et analyse brièvement la structure, le répertoire, les méthodes de création et de fonctionnement de Thinkphp5.0. Les amis dans le besoin peuvent se référer aux exemples de cet article

Décrit comment Thinkphp5.0 génère automatiquement des modules et des répertoires. Je le partage avec vous pour votre référence. Les détails sont les suivants :

Thinkphp 5.0 est sorti depuis un certain temps. On dit que les performances ont été grandement améliorées. Selon le responsable, la version ThinkPHP 5.0 est. une version subversive et reconstruite. , adopte une nouvelle idée architecturale, introduit de nombreuses nouvelles fonctionnalités PHP, optimise le noyau, réduit les dépendances, réalise un véritable chargement paresseux et effectue de nombreuses optimisations pour le développement d'API. Il est temps d’en télécharger une copie et de l’étudier. Aujourd'hui, nous parlons principalement de sa création automatique de modules et de répertoires.

Thinkphp5.0 génère automatiquement des modules par rapport à ThinkPHP3.2, il y a effectivement de gros changements.

Encore une fois, nous discutons principalement du module de génération Thinkphp5.0.

Travail de préparation

Téléchargez d'abord ThinkPHP5.0 depuis le site officiel. La structure du fichier après le téléchargement est la suivante :

Conservez uniquement le répertoire thinkphp et supprimez tous les autres répertoires et fichiers (vous pouvez d'abord les déplacer vers d'autres endroits pour une utilisation ultérieure)

Commencez à générer le répertoire du projet maintenant Créer un répertoire semble simple avec thinkphp3.2, mais thinkphp5.0 est plus flexible. Je ne peux m'empêcher de penser que les bonnes personnes simplifient les choses complexes ; la médiocrité rend les choses simples compliquées ; les imbéciles rendent les choses simples plus simples et les choses complexes plus compliquées.

1. Créez le fichier d'entrée index.php Bien que l'accent officiel soit mis sur l'emplacement du fichier d'entrée, il peut être placé à volonté, mais pour la commodité de l'apprentissage, il est toujours placé à la racine. répertoire

En fait, je pense personnellement, pourquoi les responsables de TP n'ont-ils pas placé l'exécution du programme thinkApp::run(); introduit une constante finish('APP_AUTO_RUN', true); lorsqu'elle est dans l'index. Si les constantes sont définies sur la page .php, le projet sera exécuté automatiquement. Il n'est pas nécessaire d'ajouter thinkApp::run();
// 应用入口文件
define('APP_PATH', 'application/'); // 定义项目路径,和之前3.2版本没有区别
define('APP_AUTO_BUILD',true); //开启自动生成
define('APP_DEBUG', true);// 开启调试模式
define('MODULE','module');
// 加载框架引导文件
require 'thinkphp/start.php';
// 执行应用
\think\App::run();
Copier après la connexion

2. Créez le nom du projet et le fichier build.php

Personnellement, je pense que thinkphp5. Le problème avec 0 est que le dossier de projet défini ci-dessus doit être créé par vous-même. le fichier de configuration de création de projet build.php doit y être placé. Mais pourquoi TP ne place-t-il pas officiellement build.php dans le répertoire racine ? Puis générer automatiquement le dossier de candidature ? À ce stade, je pense que TP3.2 est meilleur que 5.0.

Parlons maintenant de build.php. Le contenu officiel par défaut de build.php est le suivant. Discutons maintenant de

Vous pouvez définir les fichiers et les répertoires qui doivent être générés automatiquement pour chacun. module et classes MVC.
return [
  // 生成运行时目录
  '__dir__' => ['runtime/cache', 'runtime/log', 'runtime/temp', 'runtime/template'],
  '__file__' => ['common.php'],
  // 定义index模块的自动生成
  'index'  => [
    '__file__'  => ['common.php'],
    '__dir__'  => ['behavior', 'controller', 'model', 'view'],
    'controller' => ['Index', 'Test', 'UserType'],
    'model'   => [],
    'view'    => ['index/index'],
  ],
  // 。。。 其他更多的模块定义
];
Copier après la connexion

__dir__ représente le répertoire généré (prend en charge les répertoires multi-niveaux)

__file__ représente le fichier généré (s'il n'est pas défini, le fichier config.php sera généré par défaut) controller représente la classe de contrôleur générée
le modèle représente Générer la classe de modèle
la vue signifie générer des fichiers HTML (prend en charge les sous-répertoires)

Générer automatiquement APP_PATH comme répertoire de départ, __dir__ et __file__ signifient que les répertoires et les fichiers ont besoin à créer automatiquement, et d'autres signifient Généré automatiquement pour les modules.

La génération automatique des modules utilise APP_PATH.'Module name/' comme répertoire de départ.

Enfin, exécutez simplement le fichier index.php directement.

Ce qui précède est l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

ThinkPHP implémente des appels inter-modules


Remplacement de modèles ThinkPHP, constantes système et exemples d'application

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal