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.在入口 ...
随机推荐
- ubuntu 常用命令集
一.安装的时候,让你输入代替root用户的名称与密码 使用sudo root切换root的时候会要求你输入密码,这时候你输入什么都不对的 要想使用的哈,需要给root设置密码,命令如下: sudo p ...
- HDU1255覆盖的面积
覆盖的面积 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submis ...
- ES6中数组的新方法
数组的扩展 1.1扩展运算符 1.1.1:... 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. <body> < ...
- font-size:100% 原因
The browser default which is something like 16pt for Firefox, You can check by going into Firefox op ...
- 使用TP5创建一个REST API
原文在这里 : http://hmw.iteye.com/blog/1190827 tp自带的api,get请求接口 /** * 显示资源列表 * * @return \think\Response ...
- [MYSQL] 记一次MySQL性能调优
最近在做数据迁移工作,已有一堆数据文件,要把这些数据文件写到MySQL 数据库里面去. MySQL数据库上架了一层服务接口,可以直接调用.博主写了一个迁移程序,放在服务器A上. *********** ...
- Git Submodules are not SVN Externals
一直在寻找Git跟TFS里面类似SVN Externals的替代方案, 今天终于找到了GIT里面的替代方案,在此做个备注 http://alexking.org/blog/2012/03/05/git ...
- 深入理解ES6之—set与map
Set是无重复值的有序列表.Set会自动移除重复的值,因此你可以使用它来过滤数组中重复的值并返回结果. Map是有序的键值对,其中的键允许是任何类型. Set和Map是es6新增的两个数据集合. Se ...
- Java 核心内容相关面试题【3】
目录 面向对象编程(OOP) 常见的Java问题 Java线程 Java集合类 垃圾收集器 异常处理 Java小应用程序(Applet) Swing JDBC 远程方法调用(RMI) Servlet ...
- C#去掉字符串头尾指定字符
private void button2_Click(object sender, EventArgs e) {//去掉字符串头尾指定字符 string MyInf ...