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.在入口 ...
随机推荐
- celery rabbit mq 详解
Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, ...
- Appium python自动化测试系列之页面滑动原理讲解(十)
10.1.1 页面滑动原理分析 在页面滑动查找章节我们就讲了滑动的知识点,只是不知道大家是否有认真练习以及去理解,如果你认真练习.理解了那么我相信这一章节的东西不用看也能够完成,下面我们还是简单分析一 ...
- 对Spring事务一些问题的讨论
提起spring事务,就会让人联想起四大基本特征,五个隔离级别,七大传播特性.相信大多数人都知道这些东西,但是知道是一回事情,能用好真的是另一回事了.在使用Spring事务的时候,我曾遇到过几个比较严 ...
- 视觉词袋模型(BOVW)
一.介绍 Bag-of-words model (BoW model) 最早出现在神经语言程序学(NLP)和信息检索(IR)领域. 该模型忽略掉文本的语法和语序, 用一组无序的单词(words)来表达 ...
- Ubuntu下OpenGL开发环境的搭建
由于上了计算机图形学的课,老师叫我们安装OpenGL开发环境,晚上安装了一两个小时,终于搞定了. 1. 建立基本编译环境 sudo apt-get install build-essenti ...
- Android: Only the original thread that created a view hierarchy can touch its views 异常
最近自己再写一个小项目练手,创建一个线程从网络获取数据然后显示在 recyclerView 上.写好后发现页面能够显示,但是有时候会把请求的数据显示过来,有时候不会.点开 android monito ...
- D - Zhenya moves from the dormitory URAL - 2015
After moving from his parents’ place Zhenya has been living in the University dormitory for a month. ...
- Problem B
Problem Description A subsequence of a given sequence is the given sequence with some elements (poss ...
- Node闲谈之Buffer
在刚接触Nodejs的时候,有些概念总让学前端的我感到困惑(虽然大学的时候也是在搞后端,世界上最好的语言,you know).我可以很快理解File System,Path等带有明显功能的模块,却一下 ...
- 深入分析Android动画(一)
动画的分类: ①View动画 View动画顾名思义其作用对象为View,包含平移.缩放.旋转.透明,这四类变化分别对应着Animation的子类TranlateAnimation.ScaleAnima ...