thinkphp

ThinkPHP中的BUG及技巧与策: 1. 模板中不能使用的标签 {$content} {$i} 2. If标签 如: 试验后总是有想不到的错误, 这样,还不如直接用php if(…){ …?>来得块些呢.

约定: 1.所有类库文件必须使用.class.php作为文件后缀,并且类名和文件名保持一致 2.控制器的类名以Action为后缀 3.模型的类名以Model为后缀,类名第一个字母须大写 4.数据库表名全部采用小写,

如: 数据表名: 前缀_表名 模型类名: 表名Model 注:这里的表名第一个字母要大写 创建对象: D(‘表名’) 注:这里的表名第一个字母要大写

定义控制器类 class IndexAction extends Action{ public function show(){ echo ‘这是新的 show 操作’; } } 然后在浏览器里面输入

http://localhost/myApp/index.php/Index/show/

定义模型类: class 表名Model extends Model{ [//手动定义字段[可选] protected $fields = array( ‘id’, ‘username’, ‘email’, ‘age’, ‘_pk’=>’id’, //主键 ‘_autoInc’=>true //是否自增 ) ] }

记录的修改: $User = D(“User”) // 实例化 User 对象 $User->find(1) // 查找 id 为 1 的记录 $User->name = ‘ThinkPHP’ // 把查找到的记录的名称字段修改为 ThinkPHP $User->save() // 保存修改的数据 更新特定字段的值 $User->setField(‘name’,‘TopThink’,‘id=1′) 同样可以支持对字段的操作 $User->setField(‘score’,‘(score+1)’,‘id=1′)

新建记录,方法1: $User = new UserModel() //实例化 User 对象 $User->字段名 = 字段值 //给字段赋值 $User->add() //添加记录 新建记录,方法2: $data[‘字段名‘] = 字段值; //给字段赋值 $User = D(‘User’); //实例化 User 对象 $User->add($data); //$insertId,Add 方法的返回值就是最新操る的主键值,可以直接猎取。 新增多条记录: $User = new UserModel() $data[0][‘name‘] = ‘ThinkPHP’ $data[0][‘email‘] = $data[1][‘name‘] = ‘流年’ $data[1][‘email‘] = $User>addAll($data)

删除记录 $User->find(2) $User->delete() // 删除查找到的记录 $User->delete(’5,6′) // 删除主键为 5、6 的数据 $User->deleteAll() // 删除查询出来的所有数据

记录查询

$User->getDbFields() //猎取当前数据字段 $User->findAll(); //查找所有记录 $User->findAll(’1,3,8′) //查询主键为1,3,8的记录集 $User->count() // 猎取记录数 $User->max(‘score’) // 猎取用户的最大积分 $User->min(‘score’,‘score>0′) // 猎取积分大于 0 的用户的最小积分 $User->avg(‘字段名’) // 猎取所有记录的字段值的平均值 $User->sum(‘字段名’) // 统计字段值 $User->getN(2,’score>80′,’score desc’) // 返回符合条件的第 2 条记录 $User->getN(2,’score>80′,’score desc’) //还可以猎取最后第二条记录 $User->first(‘score>80′,’score desc’) //如果要查询第一条记录,还可以使用 $User->last(‘score>80′,’score desc’) // 猎取最后一条记录 $User->top(5,”,’score desc’) // 猎取积分最高的前 5 条记录 $User->getBy(‘name’,‘liu21st’) //跟据字段的字段值来查询记录

$Model = new Model() // 实例化一个 model 对象 没有对应任何数据表 $Model->query(“select * from think_user where status=1″)

$objrs = $Model->query(“select * from think_user where status=1″) //自定义查询 $Model->execute(“update think_user set name=’thinkPHP’ where status=1″) //用于更新和写入数据的 sql 操作,返回影响的记录数

$User->startTrans() // 启动事务 $User->commit() // 提交事务 $User->rollback() // 事务回滚

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。