tp框架总结(二)
一、函数库和类库
项目中的常用的函数库要封装到项目Common/function.php中 在项目中可以直接调用 [ 函数();]
import方法是ThinkPHP内建的类库导入方法,提供了方便和灵活的文件导入机制,完全可以替代PH的 require和include方法。
例如:
import("MyApp.Action.UserAction");
impot("Think.Util.Array");
import("ORG.Util.Page");
二、权限把控
class BaseAction extends Action{
public _initialize(){
echo "先进行登录验证";
}
}
class IndexAction extends BaseAction{
public function index(){
//访问前先执行登录验证
$this->display();
}
}
例子::

生成跨项目的url
__ROOT__."/admin.php/Index/index
判断请求类型:
$this->isGet();//是否是get请求
$this->isPost();//是否是post请求
tp中空操作(_empty())
<?php
class CityAction extends Action{
public function _empty($name){
//把所有城市的操作解析到city方法中
$this->city($name);
}
//protected方法
protected function city($name){
echo $name;
}
}
?>
空模块的操作
- <?php
- class EmptyAction extends Action{
- public function index(){
- //根据当前模块名来判断要执行那个城市的操作
- $cityName = MODULE_NAME;
- $this->city($cityName);
- }
- //注意 city方法 本身是 protected 方法
- protected function city($name){
- //和$name这个城市相关的处理
- echo '当前城市' . $name;
- }
- }
- ?>
项目中使用空模块的例子:


ThinkPHP支持伪静态URL设置
'URL_HTML_SUFFIX' => '.shtml'
URL路由
- 'URL_ROUTER_ON' => true, //开启路由
- 'URL_ROUTE_RULES' => array( //定义路由规则
- 'news/:year/:month/:day' => array('News/archive', 'status=1'),
- 'news/:id' => 'News/read',
- 'news/read/:id' => '/news/:1',
- ),

访问localhost/tpshop/index.php/news/10 就会访问Index/show方法
tp框架总结(二)的更多相关文章
- TP框架基础 (二) ---空控制器和空操作
通过之前的学习我们知道了index.php是一个入口文件,如果没有这个入口文件的话,我们需要自己创建! [视图模板文件创建] 视图模板文件存放发位置在: 里面没有模板文件 如果我们想要访问Login控 ...
- 第一零二天上课 PHP TP框架 引入文件路径问题和调用验证码的方式
外部文件引入到视图模板的方式 1,将外部文件放在Public文件夹下,用load标签引入 2,在模板出书写引入代码(方法有很多,只有以下方法不容易出问题) <load h ...
- 第九十七天请假 PHP TP框架 MVC模式
MVC : M->Model 模型(数据层) V->View 视图(视图层) C->Controller 控制器(逻辑层) M : 操作数据(连接数据 ...
- tp框架表单验证
之前的表单验证都是用js写的,这里也可以使用tp框架的验证.但是两者比较而言还是js验证比较好,因为tp框架验证会运行后台代码,这样运行速度和效率就会下降. 自动验证是ThinkPHP模型层提供的一种 ...
- TP框架 基础1
php框架 一.真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格 ...
- ThinkPhp框架:有条件的数据库查询、tp框架的其他知识
上一篇的随笔写的是基本操作,现在可以做一些高级操作,例如有条件的查询数据,有分页的条件查询数据 一.一个条件的查询数据 查询数据自然是先要显示出数据,然后根据条件进行查询数据 (1)显示出表的数据 这 ...
- Tp框架之模型层
数据模型层是专门针对数据库来操作的 我们在home模块用一下数据模型层 先把配置修改好 我们先来打开这个文件 然后再打开think里面的主配置,把那里面关于数据库的部分,复制到home下的配置文件,然 ...
- tp框架---View视图层---模板继承(举例说明)
当我们做动态页面时,我们会发现一个网站的头部和尾部是相同的,那么我们如何用tp框架来做模板呢 ? 先看一下注意事项: (1)每个区块由<block></block>标签组成 ( ...
- tp框架-----Model模型层
1.Model模型层是用来做什么的呢? 主要是用来做操作数据库访问的.也就说明TP框架自带了一种访问数据库的方式,使用的是Model模型. 2.Model模型怎样使用呢? 要使用Model模型层访问数 ...
- tp框架表单验证 及ajax
之前的表单验证都是用js写的,这里也可以使用tp框架的验证.但是两者比较而言还是js验证比较好,因为tp框架验证会运行后台代码,这样运行速度和效率就会下降. 自动验证是ThinkPHP模型层提供的一种 ...
随机推荐
- Mysql 安装-操作-备份
Mysql 5.7 安装windows 1.配置mysql的path->系统属性->环境变量-path添加最后 2.配置目录和主从 [mysqld]port = 3306 basedir= ...
- Nginx快速入门菜鸟笔记
Nginx快速入门-菜鸟笔记 1.编译安装nginx 编译安装nginx 必须先安装pcre库. (1)uname -a 确定环境 Linux localhost.localdomain 2.6. ...
- Validation failed for one or more entities.
验证失败后用DbEntityValidationException 查找出错的字段 try { // Your code... // Could also be before try if you k ...
- 项目管理-Kick OFF 简称KO
KO的内容包括以下几个过程: 1.项目背景 我们项目在哪里?说过去,做项目之前的“悲惨境地”,明确问题根源在哪里,明白为什么要做这个项目. 2.项目意义.目的与目标 我们项目去哪里?说将来,项目完成之 ...
- HDU3068 最长回文串
题目大意:给出一个字符串,求其回文串的长度.有多组数据. 分析:manacher算法模板题. //在原字符串两边和中间插入一个从未出现的字符,比如‘#’.然后再在最前面插入一个‘*’.#include ...
- MySQL 使用笔记
1. How to export the database of mysql go to command line, use "CMD" cd C:\Program Files\ ...
- oracle之trunc与round
round(x[,y]) 功能:返回四舍五入后的值 参数:x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位. 返回: ...
- mysql 笔记
mysql配置主从复制的时候,不能将server-id设置成非数字,这样会导致mysqld启动失败. mysql重启的时候,自动会释放锁(这个锁应该是位于内存的) 执行sql脚本:source /ho ...
- windows平台CodeBlocks MinGW C++11开发环境搭建
前言: 本文是以单独下载codeblock编辑器跟MinGW编译器这种方式进行安装,下载带MinGW编译器的codeblocks版本安装配置方式跟这个类似. 一: 下载并安装MinGW 这个参考我写的 ...
- mac 下配置 VS Code 开发 Golang
对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github.com/microsoft/vscode-go 这款插件的特性包括: 代码着彩 ...