thinkphp框架知识点
基本配置
define('APP_DEBUG',true);//开启debug模式
//记录日志
'LOG_RECORD' => true, //系统日志在记录的时候需要开启debug调试模式,如果debug模式没有开启,日志并不记录.
'DB_SLQ_LOG' => true, //SQL执行日志
model操作
1、新增数据 用add()方法
$catModel->cat_name = 'xibeiwang';
$catModel->intro = 'guofei';
$catModel->parent_id = 1;
$catModel->add();
或者
$data = array('cat_name'=>'xibeiwang','intro' =>'guofei','parent_id' => 1);
$catModel->add($data);
2、查询数据
//新方法 tp封装的方法
$catModel = D('Cat');
var_dump($catModel->find('2'));
//新方法 tp封装的方法
$catModel = D('Cat');
var_dump($catModel->find('2'));
var_dump($catModel->select('2'));
var_dump($catModel->where('cat_id=3')->select('2'));
注意:
不论是find还是select只要里面加了参数 (参数会默认为主键,若表没有主键那么这里写的就无效)
那么where都不起作用了
如下:
$this->cat->where('intro="web的一种脚本语言"')->find(2);
变成了
SELECT * FROM `cat` WHERE `cat_id` = 2 LIMIT 1
$this->cat->where('intro="web的一种脚本语言"')->select(2);
变成了
SELECT * FROM `cat` WHERE `cat_id` = 2
3、修改数据
$catModel = D('Cat');
//面向对象的风格
$catModel = find('2');
$catModel -> cat_name = 'xibeiwang';
var_dump($catModel->save());//返回受影响行数
//不查询直接修改也可以
//其实就是面向过程化的风格
$catModel->where('cat_id=1')->save(array('cat_name'=>'haoshuang'));
4、删除数据
var_dump($model->delete(4)); //按主键来删除 where cat_id=4
var_dump($model->delete('3,4,5,6')); // where cat_id in (3,4,5,6);
var_dump($model->where('cat_id=2')->delete()); // where cat_id=2;
模版操作
1、assign赋值
$this->assign('title','标题');
$this->assign('content',$content);
$this->display();
2、变量输出
<title>{$title}</title>
3、if/else 标签
<if condition="$rand==1">
等于1
<elseif condition="$rand==2" />
等于2
<else/>
等于3
</if>
4、三元运算
{$rand?'对了':'错了'}
5、数组循环
<foreach name="bests" item="g">
<li>
{$g.goods_name}
</li>
</foreach>
6、import导入css,js文件
<import type="css" file="a.b.c" />
<import type='js' file='js/test'/>导入js
则导入
APP/Public/a/b/c.css //APP指代项目跟目录,新建Public/a/b目录
7、load导入css,js文件
<load href="__PUBLIC__/Js/XXX.js" />
<load href="__PUBLIC__/css/style.css" />导入css
导入的是APP/Public/Js/xxx.js
8、模板包含
<include file="Public/模版名(不含后缀)" />
例如:包含Home/View/Public/header.html;
<include file="Public/hader" /
thinkphp框架知识点的更多相关文章
- 攻城记:Thinkphp框架的项目规划总结和踩坑经验
一.项目模块规划 1.项目分为PC端.移动端.和PC管理端,分为对应目录为 /Application/Home,/Application/Mobile,/Application/Admin: 对应入口 ...
- ThinkPHP框架的一些基础应用
这是俺滴师傅给俺传授了的知识,特在此分享. TP框架,做PHP开发的都应该有所耳闻.下面,我们就来说说入口文件的生成: 创建新项目时,首先,在目录文件下创建一个新的文件夹.然后将Thinkphp框架文 ...
- 关于在BAE上部署ThinkPHP框架的问题
现在有点小兴奋,因为在在BAE上部署ThinkPHP框架的问题快折腾一天了,午觉都没睡,不过没白整总算有点结果.不扯淡了,直入正题吧. 之前熟悉ThinkPHP框架,想在BAE上用ThinkPHP做点 ...
- 番外一:关于thinkphp框架下的文件导入路径问题
总的来说,要使在thinkphp框架下面HTML导入的图片.css文件和js文件有效,只有两种方法:(1)使用绝对路径:(2)在项目目录下创建新目录Public,把所有的img文件夹.js文件夹和cs ...
- 程序员必懂:javaweb三大框架知识点总结
原文链接:http://www.cnblogs.com/SXTkaifa/p/5968631.html javaweb三大框架知识点总结 一.Struts2的总结 1.Struts 2的工作流程,从请 ...
- 【PHP】基于ThinkPHP框架搭建OAuth2.0服务
[PHP]基于ThinkPHP框架搭建OAuth2.0服务 http://leyteris.iteye.com/blog/1483403
- thinkphp框架下404页面设置
404页面即系统在找不到请求的操作方法和找不到请求的控制器名称时的一种报错行为的优化. 第一步:在thinkphp框架中的Home/Comtroller中建一个EmptyController.clas ...
- [2012-4-10]ThinkPHP框架被爆任意代码执行漏洞(preg_replace)
昨日(2012.04.09)ThinkPHP框架被爆出了一个php代码任意执行漏洞,黑客只需提交一段特殊的URL就可以在网站上执行恶意代码. ThinkPHP作为国内使用比较广泛的老牌PHP MVC框 ...
- ThinkPHP框架的部署
1.将ThinkPHP框架的框架文件放到想要放置的地方,与创建的应用文件夹同级 2.vhost文件中设置虚拟目录 3.在hosts文件中配置 4.在应用目录中创建入口文件index.php 5.在入口 ...
随机推荐
- 探索equals()和hashCode()方法
探索equals()和hashCode()方法 在根类Object中,实现了equals()和hashCode()这两个方法,默认: equals()是对两个对象的地址值进行的比较(即比较引用是否相同 ...
- Python 爬虫:把廖雪峰教程转换成 PDF 电子书
写爬虫似乎没有比用 Python 更合适了,Python 社区提供的爬虫工具多得让你眼花缭乱,各种拿来就可以直接用的 library 分分钟就可以写出一个爬虫出来,今天尝试写一个爬虫,将廖雪峰老师的 ...
- 阿里JAVA开发手册零度的思考理解(二)
转载请注明原创出处,谢谢! 说在前面 人生的大道上默默地走,就必须要有一盏灯亮着为你引导方向!而这盏灯抑或只是一句话,一句鼓励,一个赞美,一次承认,一次认可,一次相识一次交流-- 上篇文章:阿里JAV ...
- Marriage is Stable
Marriage is Stable Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- Linux学习(十七)压缩与打包
一.关于打包和压缩 打包和压缩的最大意义在于减少文件传输中需要的流量.打包的方式大概有tar命令,zip命令.压缩的方式有gzip,bzip2,xz.tar命令可以通过参数将压缩和打包在一起执行. 二 ...
- Android 开发笔记___基本适配器的使用__BaseAdapter
之前用到过ArryAdapter适用于纯文本的列表数据,SimpleAdapter适用于带图标的列表数据,但在实际应用中常常有更复杂的列表,比如同一项中存在多个控件,这时候用前面的两个会比较复杂,而且 ...
- 快速学会使用Fiddler抓包 截包伪造提交包
1.Fiddler介绍 Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑,移动设备和互联网之间的http通讯,设置断点,查看所有的"进出"Fiddler的 ...
- php正则表达式,在抓取内容进行匹配的时候表现不稳定
最近做了一个 抓取内容的程序,使用php的正则表达式对抓取的内容进行匹配,当进行大量匹配运算的时候,发现偶尔会出现匹配失败的情况.检查不出任何原因. 匹配失败导致匹配结果为空,最终导致写入数据库失败. ...
- Spring Boot单元测试(Mock)
Spring Boot单元测试(Mock) Java个人学习心得 2017-08-12 16:07 Mock 单元测试的重要性就不多说了,我这边的工程一般都是Spring Boot+Mybatis(详 ...
- 【APP问题定位(二)】Charles定位工具
Charles工具是APP测试中简单有使用的一款测试工具,可以通过捕获request和response的信息初步确定bug的原因所在. 本文将从安装.使用两个方面来介绍. 安装 点击这里进入下载页,注 ...