【ThinkPHP】解析ThinkPHP5创建模块

在根目录下有一个build.php文件,该文件是自动生成的,自动创建模块。

build.php的文件内容如下:

<?php
return [
    // 生成应用公共文件
    ‘__file__‘ => [‘common.php‘, ‘config.php‘, ‘database.php‘],

    // 定义demo模块的自动生成 (按照实际定义的文件名生成)
    ‘demo‘     => [
        ‘__file__‘   => [‘common.php‘],
        ‘__dir__‘    => [‘behavior‘, ‘controller‘, ‘model‘, ‘view‘],
        ‘controller‘ => [‘Index‘, ‘Test‘, ‘UserType‘],
        ‘model‘      => [‘User‘, ‘UserType‘],
        ‘view‘       => [‘index/index‘],
    ],
    // 其他更多的模块定义
];

其中
__dir__ 表示生成目录,可以支持多级目录
__file__ 表示生成文件,不定义默认会生成config.php和common.php文件
controller 表示生成的controller类
model 表示生成model类
view 表示生成html文件

默认的build.php文件,只有一个demo模块。可以按照上面的demo模板,定义更多的模块。

接下就是生成模块文件了,有两种模块生成方式,第一种是通过命令行方式,第二种是通过链接访问的方式。

命令行方式:

首先拷贝根目录下的build.php文件到application文件夹下,然后在项目的根目录下执行命令

php think build --module demo

执行结果显示Success,表示生成成功。如果不指定--module参数,那么将会生成build.php中配置的所有的模块。

链接访问方式:

通过在项目目录下的public/index.php文件中进行配置,然后通过链接访问的方式完成生成模块目录:
index.php文件原来的内容如下:

<?php
// [ 应用入口文件 ]
// 定义应用目录
define(‘APP_PATH‘, __DIR__ . ‘/../application/‘);
// 加载框架引导文件
require __DIR__ . ‘/../thinkphp/start.php‘;

然后在index.php后面加上如下语句:

$build = include APP_PATH.‘build.php‘;
\think\Build::run($build);

然后访问 http://localhost/项目名称/public/index.php ,就完成模块目录的生成了。

原文地址:https://www.cnblogs.com/HDK2016/p/10482352.html

时间: 2024-10-14 21:36:17

【ThinkPHP】解析ThinkPHP5创建模块的相关文章

Android xUtils3源码解析之数据库模块

xUtils3源码解析系列 一. Android xUtils3源码解析之网络模块 二. Android xUtils3源码解析之图片模块 三. Android xUtils3源码解析之注解模块 四. Android xUtils3源码解析之数据库模块 配置数据库 DbManager.DaoConfig daoConfig = new DbManager.DaoConfig() .setDbName("test.db") .setDbVersion(1) .setDbOpenListe

Python创建模块(第五章:模块)

模块提供了一种程序之间共享python代码的便捷方式.python提供了几百个模块的库,您可以在脚步中调用它们,也可以创建自己的模块. 本章介绍 研究模块的内部机制 创建一个仅包含函数的模块 在模块中定义类 通过子类扩展类 定义异常来报告错误状态 为模块建立文档 测试模块 将模块作为程序运行 安装模块 5.1研究模块 模块只是一个python源文件,它可以包含变量,类,函数和python脚本中可用到的其他任何元素. 通过使用dir函数可以更好地理解模块,给dir函数传递某个python元素(例如

python学习--创建模块

昨天做了python客户端和服务器端通信,并把接收到的信息写到数据库,因为对数据库进行操作是个经常调用的行为,所以我想把调用数据库的操作写成一个module来给其它python程序调用,所以将昨天的服务器端程序拆分为两个文件: 1.主程序python.py #!/usr/bin/env python import socket import json import connmysql s = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0) h

创建模块

创建模块: var app = angular.module("myApp",[]) 在项目中创建一个controller:ng.module("模块名",[]) .controller("controller",function(这里写控制器的依赖){}) 在项目中创建一个service:ng.module("模块名",[]) .factory("service",function(){}) 创建模块与引

怎么创建模块?

# -*- coding: utf-8 -*- #python 27 #xiaodeng #怎么创建模块? #要创建模块时,只需编写一个包含python语句的文本文件即可. #每个源代码文件都会自动成为模块,而且也没有语法用来声明模块. #导入操作会把模块文件加载到内存中使其成为模块对象.

AngularJS进阶(四十)创建模块、服务

AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能,使之能跨应用使用. 一.应用程序模块化 先看看一个没有模块化的程序 <!DOCTYPE> <!-- use module --> <html ng-app="exampleApp"> <head> <title>Angluar

Android xUtils3源码解析之注解模块

xUtils3源码解析系列 一. Android xUtils3源码解析之网络模块 二. Android xUtils3源码解析之图片模块 三. Android xUtils3源码解析之注解模块 四. Android xUtils3源码解析之数据库模块 初始化 public class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { su

thinkphp无法加载模块解决办法

前台入口文件index.php <?php //前台入口 define('THINKPHP_PATH', '../ThinkPHP/');//底层的位置 define('APP_PATH', './home/');//定义项目位置 define('APP_DEBUG', true);//定义DEBUG开关 require_once THINKPHP_PATH.'ThinkPHP.php'; //echo 'hellow'; ?> 配置文件: 1 <?php 2 return array(

ios Json的解析与创建

之前写过类似微信的语音功能,这里用到了json解析与创建 + (NSString *)voiceMessageConentWithEntity:(VMessageEntity *)entity{ NSLog(@"entity.voiceMessage.voicemd5 == %@",entity.voiceMessage.voicemd5); if (!entity) { return nil; } VChatVoiceEntity *voiceMessage = entity.voi