ThinkPHP3开发模式,控制器操作,配置文件,框架语法
ThinkPHP的开发模式
tp框架有两种使用模式:开发模式(调试模式),一种是生产模式(运行模式)
define('APP_DEBUG', true); //调试模式
define('APP_DEBUG', FALSE); //运行模式
运行模式会把很多核心文件代码缓存成" common~runtime.php"文件,把原来每次需要加载许多文件的请求现在只要请求一个缓存文件,节省了很多文件的打开,关闭的开销。
在页面的底部显示日志信息
在配置文件中,添加如下配置
配置完成后,在浏览器的右下角会显示如下标记。
如果想看源码的话,在behavior文件夹下的ShowPageTraceBehavior.class.php
把ThinkPHP的引擎改成Smarty
smarty引擎的存放位置
smarty驱动
如果想更改Smarty的配置(一般不要改)
控制器操作
空操作
系统在找不到请求的方法的时候,会定位到__empty()方法处理,利用这个机制,我们可以对用户请求的不存在的所有操作进行统一处理。
空控制器
当系统请求找不到控制器,会定位到空控制器上EmptyController。
跨控制器调用
1、直接实例化
2、A()
A()用来实例化其他控制器的。
$obj->display(“Manager/ManagerTest1”) //调用的是模版
3、R()
R()和A()基本一样,唯一不同的是R()函数在实例化控制器的时候把操作方法一起传递过去,省略了方法的调用
TP框架的配置文件
惯例配置:ThinkPHP/conf/convention.php
应用配置:Application/Common/conf/config.php
调试配置:Application/Common/conf/debug.php
模块配置:Application/Home/conf/config.php
加载顺序
惯例配置->应用配置->调试配置->模块配置
优先级:
模块配置>调试配置>应用配置>惯例配置
C('配置的名称')用来获取配置信息。
TP框架语法
判断
<if condition='表达式'>
<elseif condition='表达式' />
<else/>
</if>
表达式中运算符
PHP运算符 |
对应的TP中的运算符 |
英文全称 |
< |
lt |
Less than |
> |
gt |
Greater than |
== |
eq |
equal |
>= |
egt |
Equal or greater than |
<= |
elt |
循环
连接数据库
在配置文件中,做如上的配置,即可连接数据库
ThinkPHP3开发模式,控制器操作,配置文件,框架语法的更多相关文章
- thinkphp3.1课程 1-1 为什么thinkphp在开发好后需要关掉开发模式
thinkphp3.1课程 1-1 为什么thinkphp在开发好后需要关掉开发模式 一.总结 一句话总结:因为调试模式中会记录你所有的调试信息,比如a调用b,b调用c,c调用d,比如你从哪个数据库取 ...
- 3.NetDh框架之缓存操作类和二次开发模式简单设计(附源码和示例代码)
前言 NetDh框架适用于C/S.B/S的服务端框架,可用于项目开发和学习.目前包含以下四个模块 1.数据库操作层封装Dapper,支持多种数据库类型.多库实例,简单强大: 此部分具体说明可参考博客: ...
- Asp.net MVC 中 CodeFirst 开发模式实例
昨天写的这篇博客因为下班时间到了忘记保存了,好郁闷,得重新写一遍.实习所在公司使用的是CodeFirst开发模式,最近开始参与到公司的项目里面来了,发现这个模式特别好用,建库建表改变字段属性添加删除字 ...
- C# 动态生成word文档 [C#学习笔记3]关于Main(string[ ] args)中args命令行参数 实现DataTables搜索框查询结果高亮显示 二维码神器QRCoder Asp.net MVC 中 CodeFirst 开发模式实例
C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-- ...
- MVC开发模式以及Smarty模板引擎的使用
Linux 全局安装 composer 将目录切换到/usr/local/bin/目录 cd /usr/local/bin/ 在 bin 目录中下载 composer curl -sS https:/ ...
- webpack+react+es6开发模式
一.前言 实习了两个月,把在公司用到的前端开发模式做个简单的整理.公司里前端开发模式webpack+react+redux+es6,这里去掉了redux. webpack, react, redux等 ...
- 一种开发模式:ajax + ashx + UserControl
一.ajax+ashx模式的缺点 在web开发过程中,为了提高网站的用户体验,或多或少都会用到ajax技术,甚至有的网站全部采用ajax来实现,大量使用ajax在增强用户体验的同时会带来一些负 ...
- ASP.NET MVC——CodeFirst开发模式
Entity Framework框架提供了几种开发模式,比如Database First,Model First,Code First.Database First是最老也是应用得最广泛的一种设计方式 ...
- java 开发模式
Java-开发模式 Java Web开发方案有多种,这里列举一些经典的开发模式进行横向比较JSP+JAVABEAN开发模式: 特点:该模式将业务逻辑与页面表现进行分离,在一定程度上增加了程序的可 ...
随机推荐
- 函数中,对形参做不加var的全局溢出赋值,可改变形参所指向的实参的本身值
var formateNumArr = function(arr,defaultVal){ var a = []; $.each(arr,function(i,v){ ...
- CSS注册页面案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- windows自动修复失败,无法启动
Windows10操作系统于2015年7月29日正式发布,此后,win10也就成了新上市的笔记本电脑或者台式机电脑的预装操作系统!win10系统给我们带了全新的体验,当然也带来了一定的烦恼!就拿win ...
- 部署oVirt4.2+Gluster超融合架构
首先下载最新ovirt-node iso镜像 准备3台机器,配置为2核,16G内存,两块硬盘,1块100G装系统,1块300G做存储 node1.com(192.168.105.221) node2. ...
- uniapp - 点赞动画插件
更新时间: 2019/8/31 - 点击下载demo 点赞动画插件配合animate.css更好用! 该组件参考于:https://github.com/OYsun/VueStar/tree/mast ...
- docker 镜像制作
# wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh# bash A ...
- SonarQube代码评审工具简介
SonarQube是一个代码评审工具,可以完成对多种类型代码的扫描,并生成报告.本文是一个简单的扫描Java代码的使用说明. 该工具主要分为两个部分: 服务端:用来保存和展示扫描结果. 客户端:或者说 ...
- -[UITableView copyWithZone:]: unrecognized selector sent to instance 0x7XXXXXX00
-[UITableView copyWithZone:]: unrecognized selector sent to instance 0x7XXXXXX00 -[Class copyWithZon ...
- [转]将已有项目代码加入svn版本控制
原文链接:https://blog.csdn.net/aaroun/article/details/79074178 将已有项目代码加入svn版本控制 - TortoiseSVN入门篇Windows下 ...
- spring cloud java: 无法访问redis.clients.jedis.JedisPoolConfig 找不到redis.clients.jedis.JedisPoolConfig的类文件
spring cloud <spring-cloud.version>Greenwich.SR3</spring-cloud.version> 注入Redis 时候: @Bea ...