tp3
入口文件:index.php
目录结构:核心,Thinkphp
公共资源,public jq 上传的图片等
应用目录,application 房模块
common:基于模块的公共目录,公共函数
命名:类:首字母大写类名controller.class.php
文件夹同名
命名空间:Home/application Admin/application
控制器命名:帕斯卡命名法
配置文件:config.php 动态配置:C('key',value);
视图:视图下的index文件夹下的xxx.html
控制器:
操作方法的定义:必须是公共的(public),操作方法的命名使用驼峰命名法
前置后置操作:
index();
_before_index();前置操作在index之前执行
_after_index();后置操作之后执行
参数绑定:
普通模式?x=...&y=...
PATHINFO模式:/x/../y/... 分隔符可进行设置(设置属性'URL_PATHINFO_DEPR')
REWRITE模式:是在PATHINFO的基础上添加了重写的,可省去入口文件
伪静态:支持所有的静态后缀,为了满足更好的SEO效果,设置('URL_HTML_SUFFIX'=>'html')
URL大小写敏感可设置
URL生成:U('地址表达式',['参数'],['伪静态后缀'],['显示域名']),
地址表达式:[/模块/控制器/操作#锚点@域名]
参数:?
/a/3/df/4
数组传参['a'=>3,'b'=>4]
AJAX返回:$data = 'ok';
$this->ajaxReturn($data,编码格式,二进制掩码);
跳转和重定向:
$this->success('新增成功', 'User/list');
$this->error('新增失败');
参数 提示信息;跳转地址;跳转时间
redirect();直接跳转
获取变量:I();
I('变量类型.变量名/修饰符',['默认值'],['过滤方法'],['额外数据源'])
变量类型:get,post,ajax......
I('get.name/d or s b a f','htmlspecialchars')
请求类型:is_get;is_post;is_put;....(此处全部大写)
demo: if (IS_POST){
$User = M('User');
$User->create();
$User->save();
$this->success('保存完成');
}else{
$this->error('非法请求');
}
连接数据库:
配置文件里进行配置;
在模型里进行设置:
protected $connection = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => '1234',
'db_host' => 'localhost',
'db_port' => '3306',
'db_name' => 'thinkphp',
'db_charset' => 'utf8',
);
连贯操作:
where('type=1 AND status=1')->select();
where(['type'=>1],['status'=>2])->select();
field('id,title,content')->select();
$Model->where('status=1')->order('id desc,status')->limit(5)->select();
$Article->limit('10,25')->select();
$Article->limit('0,10')->select();
$this->field('username,max(score)')->group('user_id')->select();
$this->field('username,max(score)')->group('user_id')->having('count(test_time)>3')->select();
$Model
->join('__WORK__ ON __ARTIST__.id = __WORK__.artist_id')
->join('__CARD__ ON __ARTIST__.card_id = __CARD__.id')
->select();
C()config
m()model
u()url
I()input
tp3的更多相关文章
- TP3.2 配置最新的阿里大于sdk
TP3.2 配置最新的阿里大于sdk 最近公司买了阿里云的阿里大于短信验证 ,这里记录下本人接入短信验证的过程和心得. 大家是不是一开始都是和本人一样直接去百度下怎么有没有现成的demo 或者是封装好 ...
- TP3.2.3 接入支付宝
TP3.2.3 接入支付宝 项目接入支付宝支付了,在做这个给我的感觉是,方便 ,毕竟是老马的产品是吧, 话不多说 , 首先我们先找到官方的SDK ,不想去找的小伙伴复制此链接 https://doc ...
- TP3.2.3 接入银联支付
TP3.2.3 接入银联支付 项目接入银联支付的过程, 在此记录下,希望能帮助开发盆友平坑. 银联SKD链接:https://open.unionpay.com/ajweb/product/newPr ...
- 微信公众号tp3.2放进Model无效,几种实例化的方法试过,还是提示无法提供服务
http://www.imooc.com/video/10230 解决方案一: $indexModel = D('Index'); 实测可行 解决方案一: 使用TP3.2的小伙伴需要注意了,在Mod ...
- tp3.2分页
tp3.2分页 使用tp3.2自带的分页类 <?php // +----------------------------------------------------------------- ...
- tp3.2sql改变时间格式
tp3.2sql改变时间格式2018-05-10取05-10 $listIn=D('api_article as a')->field('date_format( fabutime,\'%m-% ...
- TP3.2加载外部PHPexcel类,实现导入和导出
TP3.2加载外部PHPexcel类,实现导入和导出 导入: 1.将下载好的PHPexcel文件放到libray/Org/Uti/文件夹下,将PHPEXCEL.PHP改为PHPEXCEL.class. ...
- 【TP3.2】TP3.2的 FIND_IN_SET()的用法
1.mysql的find_in_set 用法我这里就不介绍了,很好用的一个方法. 2.TP3.2使用: $where['_string'] = 'FIND_IN_SET('."'$id'&q ...
- 【TP3.2.X】(同样适用于OT) 设置单入口index.php文件,区分PC/WAP/Wechat 三个终端
1.目的:本教程适用于 OneThink1.0.或者TP3.2.X 系列,达到单入口index.php文件,区分PC/WAP/Wechat 三个终端 2.启发至 : http://www.thinkp ...
- 【TP3.2+onethink】radio+checkbox+select 空间 编辑页面选中,附录 js 返回上一页
1.TP3.2框架 如何实现 [radio+checkbox+select 空间 编辑页面选中],说实话,比较繁琐,不咋地!! 不废话,上代码:(其中 XX_arr 变量一维数组) <div ...
随机推荐
- thinkPHP nginx无论怎样访问都会访问index方法解决
修改项目配置文件 application/config.php中的 pathinfo_fetch的末尾增加 REQUEST_URI 详情参考:https://www.colabug.com/35205 ...
- mysql添加外键无法成功的原因
最近很忙,碰到很多问题都忘了发上来做个记录,现在又忘了,FUCK,现在碰到一个问题, 就是mysql添加外键总是无法成功,我什么都试了,就是没注意signed和unsigned,FUCK,因为我用my ...
- nginx内容
nginx工作在7层:web server(静态内容 static contents)web reverse proxy(反向代理http,https,mail),cache(带缓存功能) proxy ...
- 一个socket数量的问题
最近遇到一个问题,从业务上出现ftp异常: ftp .**.**.** ftp: connect: Cannot assign requested address 这台服务器上的socket统计如下: ...
- 保存chrome书签中链接顺序的小技巧
长期以来,我的chrome浏览器书签总是不能自主排序,用书签管理器排序之后,不关闭chrome是好的,一旦关闭重开,又会恢复成原先的排序,实在很诧异,手动修改Bookmars文件也不行. 我们知道,如 ...
- Ymodem协议说明
模块的固件烧录过程,由Term(发送方)发送固件文件,模块(接收方)接收并写入MCU,期间使用的数据传输协议是ymodem协议. 一.概述 ymodem协议是一种发送并等待的协议,即发送方发送一个 ...
- Ubuntu上部署tomcat后无法访问8080端口问题
在tomacat的bin目录下,修改startup.sh文件,添加信息: #set java environment export JAVA_HOME=/usr/java/jdk1.8.0_111 e ...
- LinkedList使用方法
特有功能 void addFirst(E e);//在索引为0的位置添加指定元素 void addLast(E e);//在索引为size()-1的位置添加指定元素 E getFirst() 获取索引 ...
- dubbo协议报文格式
- zip 格式解析
1.格式 https://pkware.cachefly.net/webdocs/APPNOTE/APPNOTE-6.2.0.txt 官方文档 https://blog.csdn.net/hp9103 ...