ThinkPHP快速入门2-CURD,查询

来源:互联网 发布:炉石传说无法更新 mac 编辑:程序博客网 时间:2024/05/21 07:10

CURD

创建数据
通常会通过表单来提交数据,首先,我们在Home模块的View/Form 目录下面创建一个add.html 模板文件,内容为:

<FORM method="post" action="__URL__/insert">标题:<INPUT type="text" name="title"><br/>内容:<TEXTAREA name="content" rows="5" cols="45"></TEXTAREA><br/><INPUT type="submit" value="提交"></FORM>

还需要在Home模块的Controller目录下面创建一个FormController.class.php文件,暂时只需要定义FormController类,不需要添加任何操作方法,代码如下:

<?phpnamespace Home\Controller;use Think\Controller;class FormController extends Controller{}

在创建数据的过程中使用了两步:
第一步,create方法创建数据对象
第二步,使用add方法把当前的数据对象写入数据库
读取数据
1)通过find方法获取一个单一数据,定义read操作方法
2)如果只需要查询某个字段的值,可以使用getField方法
更新数据
数据的更新操作在ThinkPHP使用save方法
删除数据
delete方法可以删除单个数据,也可以删除多个数据,这取决于删除条件


查询语言

查询方式
1)使用字符串作为查询条件,但安全性不高

$User = M("User"); // 实例化User对象$User->where('type=1 AND status=1')->select(); 

2)使用数组作为查询条件,最常用

$User = M("User"); // 实例化User对象$condition['name'] = 'thinkphp';$condition['status'] = 1; // 把查询条件传入查询方法$User->where($condition)->select(); 

注:字段之间的默认逻辑关系是 逻辑与 AND,可以通过使用 _logic 定义查询逻辑
3)使用对象方式来查询

$User = M("User"); // 实例化User对象 // 定义查询条件$condition = new stdClass(); $condition->name = 'thinkphp'; $condition->status= 1; $User->where($condition)->select(); 

表达式查询


$map['字段名'] = array('表达式','查询条件');

EQ 等于(=)
NEQ 不等于(<>)
GT 大于(>)
EGT 大于等于(>=)
LT 小于(<)
ELT 小于等于(<=)
LIKE 模糊查询
[NOT] BETWEEN (不在)区间查询
[NOT] IN (不在)IN 查询
EXP 表达式查询,支持SQL语法


快捷查询

1)实现不同字段相同的查询条件

$User = M("User"); // 实例化User对象$map['name|title'] = 'thinkphp'; // 把查询条件传入查询方法$User->where($map)->select(); 

查询条件就变成
name= ‘thinkphp’ OR title = ‘thinkphp’
2)实现不同字段不同的查询条件

$User = M("User"); // 实例化User对象$map['status&title'] =array('1','thinkphp','_multi'=>true); // 把查询条件传入查询方法$User->where($map)->select(); 

注:’_multi’=>true必须加在数组的最后,表示当前是多条件匹配,这样查询条件就变成
status= 1 AND title = ‘thinkphp’

0 0
原创粉丝点击