2、开启调试模式,有什么作用?(默认关闭,在ThinkPHP.php 33行左右)

(1)非法调用的时候,有详细的报错信息,便于调试

(2)APP_DEBUG为true并且缓存文件存在,走缓存文件,否则加载Common文件夹下Runtime.php (代码如下 Think.php)

(3)同时不产生缓存文件   APP_DEBUG为true 会删除RUNTIME_FILE(缓存)文件   (Runtime.php  126行左右).

ThinkPHP.php文件  (最底下)

if(!APP_DEBUG && is_file(RUNTIME_FILE)) {
  // 部署模式直接载入运行缓存
  //echo __FILE__; //G:\wamp\www\orange\ThinkPHP\ThinkPHP.php
  require RUNTIME_FILE;
}else{
  // 系统目录定义
  //THINK_PATH G:\wamp\www\orange\ThinkPHP
  defined('THINK_PATH') or define('THINK_PATH', dirname(__FILE__).'/');
  // 加载运行时文件
  require THINK_PATH.'Common/runtime.php';
}

2、url模式

(1)0->普通模式

(2)1->默认模式  pathinfo模式

(3)2->重写模式

(4)3->兼容模式

若要输出当前的url模式:echo C('URL_MODEL');

若要获取当前页面地址:使用U方法

形式:U(‘控制器名/方法’,array('id'=>X),'后缀名',是否显示域名(true或false),‘localhost(域名)’);

例如:U(‘Index/index’,array('id'=>1),'html',true,‘localhost’);

示例:

输出结果:

接着,我们将出现的url进行复制并进行打开,就会看到:

注:若要修改URL模式,可在Config/config.php中进行:'URL_MODEL'=>要修改的模式(如:0,1,2,3);

每个模式给出的URL页面地址都不同

3、自定义函数库

(1)在项目中的Common文件夹中创建自定义函数库文件,名字必须为:function.php

(2)在function.php中定义方法,例如:

定义一个九九乘法表函数

接着在indexController.php中进行调用函数:

结果:

thinkphp 3.2.3版本学习笔记的更多相关文章

  1. react-router 4.0版本学习笔记

    Router 所有路由组件的底层接口,一般情况都不使用,而是使用更加高级的路由. 最常用的有两种<BrowserRouter>.<HashRouter> <Browser ...

  2. OpenGL编程指南第版本学习笔记 --- OpenGL程序实现过程(win32 + OpenGL)

    1. 先上代码 头文件glCommon.h #include <GL/glew.h> #include <GL/GL.h> #include <GL/GLU.h> ...

  3. pyecharts v1 版本 学习笔记 饼图,玫瑰图

    饼图: 普通案例 from example.commons import Faker from pyecharts import options as opts from pyecharts.char ...

  4. pyecharts v1 版本 学习笔记 折线图,面积图

    折线图 折线图 基本demo import pyecharts.options as opts from pyecharts.charts import Line c = ( Line() .add_ ...

  5. pyecharts v1 版本 学习笔记 散点图

    散点图 基本案例 from example.commons import Faker from pyecharts import options as opts from pyecharts.char ...

  6. pyecharts v1 版本 学习笔记 柱状图

    柱状图 bar 基本演示例子 from pyecharts import options as opts from pyecharts.charts import Bar c =( Bar().add ...

  7. thinkphp学习笔记9—自动加载

    原文:thinkphp学习笔记9-自动加载 1.命名空间自动加载 在3.2版本中不需要手动加载类库文件,可以很方便的完成自动加载. 系统可以根据类的命名空间自动定位到类库文件,例如定义了一个类Org\ ...

  8. thinkphp学习笔记8—命名空间

    原文:thinkphp学习笔记8-命名空间 新版本(3.2)中采用命名空间的方式定义和加载类库文件,解决多个模块之间的冲突问题,并实现了更加高效的自动加载机制. 需要给类库定义所在的命名空间,命名空间 ...

  9. thinkphp学习笔记5—模块化设计

    原文:thinkphp学习笔记5-模块化设计 1.模块结构 完整的ThinkPHP用用围绕模块/控制器/操作设计,并支持多个入口文件盒多级控制.ThinkPHP默认PATHINFO模式,如下: htt ...

随机推荐

  1. Ping++中的AlipaySDK和AlicloudUTDID冲突解决方案

    今天维护一个老项目发现阿里框架冲突 问题截图: 解决方案: 去阿里文档中心 https://docs.open.alipay.com/54/104509 重新下载没有UTDID冲突的库 下载SDK解压 ...

  2. [CentOS7] 常用工具 之 防暴力破解工具 Fail2ban

    防止暴力破解密码: Fail2ban ==> 用于自动ban掉ip 先用yum search fail2ban看看是否yum源含有fail2ban这个package,若没有的话请yum inst ...

  3. SCUT - 354 - CC的简单多项式 - 杜教筛

    https://scut.online/p/354 跟多项式一点关系都没有. 注意到其实两个多项式在1处求值,那么就是他们的系数加起来. 列一列发现系数就是n以内两两求gcd的值,还自动把0去掉了. ...

  4. CodeForces 131D【图特性+BFS】

    题意: 只有一个环,然后环都是0(环缩点相当于树的根),然后其余的输出到根的距离 思路: 可以从度为1的 开始搜 把那些分支全标记掉,然后再取没有标记掉的,BFS一下搞出距离. 具体这个标记: 倒着搜 ...

  5. 解读人:李思奇,Development of a sensitive, scalable method for spatial, cell-type-resolved proteomics of the human brain. (一种用于研究人类大脑基于空间或细胞类型的蛋白质组学的灵敏方法)

    发表时间:(2019年4月) 一. 概述: 本文报道了一种可研究人类大脑组织中特定神经细胞的蛋白质组学的方法.作者通过激光捕获显微切割技术(LCM)从逝者大脑中分离出目的神经元细胞,接着尝试了一系列不 ...

  6. Codeforces Round #501 (Div. 3) 1015D Walking Between Houses

    D. Walking Between Houses time limit per test 2 seconds memory limit per test 256 megabytes input st ...

  7. Codeforces Round #501 (Div. 3) 1015A Points in Segments (前缀和)

    A. Points in Segments time limit per test 1 second memory limit per test 256 megabytes input standar ...

  8. python 3.7 生成数据库文档

    开发阶段数据库总是有变动,开发人员需要维护文档给相关人员使用,故编写一个脚本自动生成数据库文档 生成的excel如下 import cx_Oracle import os from openpyxl ...

  9. jmeter 正则获取参数集合和ForEach控制器结合使用(转)

    怎么把第一个请求获取的返回的多个id,在第二个请求中逐个以单个id作为请求参数来请求? 为了解决这个问题,模拟下该场景 1.请求www.163.com 主页,获取响应中的所有数字,这个获取的数字集合暂 ...

  10. ES6工作中常用知识点

    好久不动笔了 第一个知识点:import 和 export import导入模块.export导出模块 //全部导入 import people from './example' //有一种特殊情况, ...