一、调试模式

TP的调试模式其实就控制了TP关于配置信息以及函数的缓存功能

如果开启了调试模式,每次访问项目,Tp都会去加载最新的配置以及函数信息。

如果关闭了调试模式,当tp第一次访问时会降配置以及函数信息保存到一个文件common-->runtime.php,后续每次访问都直接读取这文件。

开启调试方式,必须写在加载tp框架之前

define('APP_DEBUG',TRUE);

二、配置项

1.  tp默认配置文件,

Thinkphp =>Conf=>convention.php

2.  公共模块的配置文件

Application => Common => conf => conf.php

3. 模块配置文件

home  =>  common =>conf = > config.php

4. 配置文件的优先级

模块配置 > 公共模块配置  >  TP默认的配置文件

三.  配置

ThinkPHP框架中默认所有配置文件的定义格式均采用返回PHP数组的方式

配置参数不区分大小写(因为无论大小写定义都会转换成小写)

1. 读取配置    C('参数名称')

// 由于配置参数不区分大小写

C('url_model');     url_model 尚未存在设置,则返回NULL。

2   动态配置

之前的方式都是通过预先定义配置文件的方式,而在具体的操作方法里面,我们仍然可以对某些参数进行

动态配置(或者增加新的配置),主要是指那些还没有被使用的参数

设置格式:

C('参数名称','新的参数值')

例如,我们需要动态改变数据缓存的有效期的话,可以使用

// 动态改变缓存有效期

C('DATA_CACHE_TIME',60);

动态配置赋值仅对当前请求有效,不会对以后的请求造成影响。

四。 创建模块

1. 在application 下创建目录    Admin

2  在 Admin目录下创建对应的控制器,模型,视图等目录

3   在后台的模块里面创建控制器,方法

五   TP中四种URL 模式介绍

1 普通模式

默认情况下是通过入口文件 m, c, a 传递三个参数来指定 具体的模块,控制器,方法名称来实现访问到某一个方法

普通访问格式:

http://www.tptest.com/index.php?m=admin&c=admin&a=testadmin

2  pathinfo模式

PATHINFO模式是系统的默认URL模式,提供了最好的SEO支持,系统内部已经做了环境的兼容处理,所

以能够支持大多数的主机环境。对应上面的URL模式,PATHINFO模式下面的URL访问地址是:

http://www.tptest.com/index.php/admin/admin/testadmin

对于上述的地址,访问Admin模块下的admin控制器下面的testadmin方法 ,如果带参数

http://www.tptest.com/index.php/admin/admin/testadmin/name/value

3. rewire模式

Options +FollowSymlinks

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

六   URL生成

1. U函数

U方法的定义规则如下(方括号内参数根据实际应用决定):

U('地址表达式',['参数'],['伪静态后缀'],['显示域名'])

地址表达式

地址表达式的格式定义如下:

[模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2...

U('User/add') // 生成User控制器的add操作的URL地址

U('Blog/read?id=1') // 生成Blog控制器的read操作 并且id为1的URL地址

U('Admin/User/select') // 生成Admin模块的User控制器的select操作的URL地址

七 页面跳转

系统的 \Think\Controller 类内置了两个跳转方法success和error,用于页

面跳转提示,而且可以支持ajax提交。

1. success和error方法的第一个参数表示提示信息,第二个参数表示跳转地址,第三个参数是跳转时间(单

位为秒),例如:

// 操作完成3秒后跳转到 /Article/index

$this->success('操作完成','/Article/index',3);

// 操作失败5秒后跳转到 /Article/error

$this->error('操作失败','/Article/error',5);

2. 跳转地址是可选的,success方法的默认跳转地址是 $_SERVER["HTTP_REFERER"] ,error方法的默认

跳转地址是 javascript:history.back(-1); 。

默认的等待时间success方法是1秒,error方法是3秒

success 和 error 方法都可以对应的模板,默认的设置是两个方法对应的模板都是:

//默认错误跳转对应的模板文件

'TMPL_ACTION_ERROR' => THINK_PATH . 'Tpl/dispatch_jump.tpl',

//默认成功跳转对应的模板文件

'TMPL_ACTION_SUCCESS' => THINK_PATH . 'Tpl/dispatch_jump.tpl',

3.重定向

Controller类的redirect方法可以实现页面的重定向功能。

redirect方法的参数用法和U函数的用法一致(参考URL生成部分),例如:

//重定向到New模块的Category操作

$this->redirect('New/category', array('cate_id' => 2), 5, '页面跳转中...');

$this->redirect( 'Admin/admin/testadmin',array('id'=>2),3,"页面重定向跳转中");

$this->redirect( 'Admin/admin/testadmin','id=2',3,"页面重定向跳转中");

上面的用法是停留5秒后跳转到New模块的category操作,并且显示页面跳转中字样,重定向后会改变当

前的URL地址。

如果你仅仅是想重定向要一个指定的URL地址,而不是到某个模块的操作方法,可以直接使用

redirect 函数重定向,例如:

//重定向到指定的URL地址

redirect('/New/category/cate_id/2', 5, '页面跳转中...')

Redirect函数的第一个参数是一个URL地址。

八  空操作与空控制器

1.空操作

2.空控制器

php 中tp3.2中c,thinkphp3.2笔记(2)调试模式,配置项C,创建模块, 四种URL模式,URL生成,跳转...相关推荐

  1. JavaScript中函数四种调用模式

    目录 JS中函数的四种调用模式 函数调用模式 方法调用模式 构造器调用模式 上下文调用模式 JS中函数的四种调用模式 在函数的调用模式中感觉最大的区别就是: this指向 函数调用模式 即通过函数名直 ...

  2. Android中Activity的四种启动模式

    每次看到这种专有词汇都十分佩服创造者的智慧,创造者一定和我一样都中二,我已然确信. 我写博客的目的,就是希望不断磨练自己,让自己能够不将一件简单的事情讲的复杂,让自己能将一件复杂的事情讲的简单.嘛嘛, ...

  3. 【转】JavaScript中的this关键字使用的四种调用模式

    http://blog.csdn.net/itpinpai/article/details/51004266 this关键字 本意:这个.这里的意思. 在JavaScript中是指每一个方法或函数都会 ...

  4. Android中四种启动模式,最容易理解的小白教程

    说起Android中的启动模式,其实是个很基础的内容,谁都知道是4中启动模式,没错分别是以下四种: 1,standard 2,singleTop 3,singleTask 4,singleInstan ...

  5. Burp Suite中intruder爆破模块四种模式的区别

    对于bp爆破模块中的四种模式,字面意思加上英语翻译过来实在太抽象了.那就结合具体实例解释一下 1. Sniper(狙击手) 顾名思义,就是一个一个的来,就跟98K一样,一ju一个准.也是最基础的一种模 ...

  6. Java实现二叉树的创建与四种遍历方式(前,中,后,层)

    文章目录 1.二叉树节点的创建 2.二叉树的先序遍历 3.二叉树的中序遍历 4.二叉树的后序遍历 5.二叉树的层序遍历

  7. Javascript四种调用模式中的this指向

    第一种:函数直接调用执行的模式 function add(a,b){ console.log(this); return a+b; } add(1,2) //this===window 这里的this ...

  8. Android中Activity的四种启动方式

    谈到Activity的启动方式必须要说的是数据结构中的栈.栈是一种只能从一端进入存储数据的线性表,它以先进后出的原则存储数据,先进入的数据压入栈底,后进入的数据在栈顶.需要读取数据的时候就需要从顶部开 ...

  9. Java 中的四种引用及垃圾回收策略

    Java 中有四种引用:强引用.软引用.弱引用.虚引用: 其主要区别在于垃圾回收时是否进行回收: 1.强引用 使用最普遍的引用.如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会 ...

  10. css中变形,css3中变形处理

    transfrom功能 在css3 中可以使用transfrom功能实现文字或图像的旋转,缩放,倾斜,移动等变形处理 deg是css3中使用的一种角度单位. 旋转: 使用rotate方法,在参数中加入 ...

最新文章

  1. linux route命令深入浅出与实战案例精讲
  2. 非常实用的 Python 库,推一次火一次
  3. python折线图怎么添加数值_Python数据可视化:如何创建曲线图
  4. 计算机系统结构sw指令集,自考02325计算机系统结构复习资料六
  5. WEB三大攻击之—XSS攻击与防护
  6. 从零开始学前端:定时器、Math对象 --- 今天你学习了吗?(JS:Day12)
  7. Visual Studio Developer Assistant 3月新功能展示
  8. ASP.NET的ADO(ActiveX Data Objects)
  9. HDOJ 1505 City Game
  10. 国产宽带电力载波驱动芯片GS6212应用原理图(PIN TO PIN THS6212)
  11. IDEA中看代码时返回上一步快捷键(Mac)
  12. Chrome保存整个网页为图片(终极解决方案!)
  13. Nginx反向代理汇总
  14. 为什么计算机日期最早1970,计算机时间基准——1970.1.1
  15. 补天漏洞平台:让更多的白帽子脱离黑产
  16. 【Python】python脚本实例
  17. 同步线程和异步线程的区别
  18. xpath 准确匹配 跟 模糊匹配属性
  19. Adobe国际认证|使用 Adob​e Acrobat 在线增强协作
  20. 北京兄弟连web前端

热门文章

  1. 自动驾驶_高精地图模型构成
  2. AI技术如何做工程?
  3. 回顾:饶毅教授的一次采访
  4. 深度学习三种分割定义
  5. C++调用SSD caffe模型进行物体检测-Opencv3.4.3
  6. Overfeat图片分类、定位、检测
  7. a=a++问题引发的思考
  8. HDU 3785 寻找大富翁
  9. NSGA2 算法Matlab实现
  10. 智能优化算法:果蝇优化算法-附代码