全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Thinkphp5.0自动生成模块及目录的方法详解

本文实例讲述了Thinkphp5.0自动生成模块及目录的方法。分享给大家供大家参考,具体如下:

Thinkphp5.0发布已有些时日了,据说性能方面有很大的提升,按照官方的话,ThinkPHP5.0版本是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,并针对API开发做了大量的优化。是时候得download一份,研究一下。今天主要讲讲其自动创建模块及目录。

Thinkphp5.0自动生成模块较ThinkPHP3.2,确实有很大的变化。

再次,主要讨论Thinkphp5.0生成模块。

准备工作

首先从官方下载ThinkPHP5.0,下载后文件结构如下:

只保留thinkphp目录其他的所有目录及文件一并删除(可以先转移到其他地方,以备后续使用)

现在就开始生成项目需要目录

thinkphp3.2创建目录貌似简单,但是thinkphp5.0却更加灵活。不禁想起了良才是把复杂的事情变简单;庸才是把简单的事情变复杂;蠢材是把简单的事情变得更简单,复杂的事情变得更复杂。

1.创建入口文件index.php,虽然官方强调入口文件位置,可以随意放置,但是为了便于学习,还是放在根目录下

// 应用入口文件
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();

其实我个人觉得,TP官方为啥不把,程序的执行\think\App::run(); 放置在start.php  目录呢?最后,发现原来TP5.0引入了一个define('APP_AUTO_RUN', true);常量,当在index.php页面定义了改常量,项目就会自动执行,不需要添加\think\App::run();

2.创建项目名与build.php文件

个人感觉thinkphp5.0做的不好的一点就是上面定义的项目文件夹需要自己创建,究其原因,因为里面要放置项目创建配置文件build.php。但是为啥TP官方不把build.php放置在根目录下呢?然后自动生成application文件夹呢?在这一点我觉得TP3.2做的就比5.0好。

现在来讨论一下build.php,官方默认的bulid.php内容如下,现在来讨论一下

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'],
  ],
  // 。。。 其他更多的模块定义
];

可以给每个模块定义需要自动生成的文件和目录,以及MVC类。

__dir__ 表示生成目录(支持多级目录)
__file__ 表示生成文件(不定义默认会生成 config.php 文件)
controller 表示生成controller类
model表示生成model类
view表示生成html文件(支持子目录)

自动生成以APP_PATH 为起始目录, __dir__ 和 __file__ 表示需要自动创建目录和文件,其他的则表示为模块自动生成。

模块的自动生成则以 APP_PATH.'模块名/' 为起始目录。

最后直接运行index.php文件即可。

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。


# Thinkphp5.0  # 自动生成  # 模块  # 目录  # ThinkPHP中的三大自动简介  # thinkPHP5.0框架自动加载机制分析  # ThinkPHP3.1新特性之动态设置自动完成和自动验证示例  # thinkphp在模型中自动完成session赋值示例代码  # thinkPHP自动验证、自动添加及表单错误问题分析  # ThinkPHP中create()方法自动验证表单信息  # thinkPHP框架自动填充原理与用法分析  # thinkPHP线上自动加载异常与修复方法实例分析  # ThinkPHP5.0框架使用build 自动生成模块操作示例  # 其他的  # 不把  # 是一个  # 进阶  # 加载  # 就会  # 放在  # 相关内容  # 我觉得  # 才是  # 在这  # 不需要  # 感兴趣  # 给大家  # 引入了  # 准备工作  # 更多关于  # 所述  # 则以 


相关文章: 如何通过西部数码建站助手快速创建专业网站?  魔方云NAT建站如何实现端口转发?  济南专业网站制作公司,济南信息工程学校怎么样?  定制建站策划方案_专业建站与网站建设方案一站式指南  免费网站制作appp,免费制作app哪个平台好?  南京网站制作费用,南京远驱官方网站?  如何在建站之星绑定自定义域名?  建站ABC备案流程中有哪些关键注意事项?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  平台云上自助建站如何快速打造专业网站?  如何通过商城免费建站系统源码自定义网站主题?  如何高效配置IIS服务器搭建网站?  相册网站制作软件,图片上的网址怎么复制?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  如何在IIS服务器上快速部署高效网站?  如何获取PHP WAP自助建站系统源码?  c# await 一个已经完成的Task会发生什么  建站之星Pro快速搭建教程:模板选择与功能配置指南  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  ,想在网上投简历,哪几个网站比较好?  盘锦网站制作公司,盘锦大洼有多少5G网站?  如何选择PHP开源工具快速搭建网站?  建站之星免费模板:自助建站系统与智能响应式一键生成  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  如何在万网自助建站中设置域名及备案?  如何通过多用户协作模板快速搭建高效企业网站?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  定制建站模板如何实现SEO优化与智能系统配置?18字教程  小型网站制作HTML,*游戏网站怎么搭建?  如何在腾讯云服务器快速搭建个人网站?  IOS倒计时设置UIButton标题title的抖动问题  在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  如何解决ASP生成WAP建站中文乱码问题?  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  建站168自助建站系统:快速模板定制与SEO优化指南  高端建站三要素:定制模板、企业官网与响应式设计优化  营销式网站制作方案,销售哪个网站招聘效果最好?  微信小程序 input输入框控件详解及实例(多种示例)  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  ,网页ppt怎么弄成自己的ppt?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  常州自助建站:操作简便模板丰富,企业个人快速搭建网站  已有域名能否直接搭建网站?  如何在阿里云高效完成企业建站全流程?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何通过虚拟主机快速完成网站搭建?  建站主机核心功能解析:服务器选择与网站搭建流程指南 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。