thinkphp更新数据库方法以及一些重要概念
thinkphp更新数据库方法以及一些重要概念ThinkPHP现在引用非常广泛,是一个快速、兼容而且简单的轻量级国产PHP开发框架,在PHP开发中是一个重点的知识点,也是兄弟连(www/itxdl/cn)里面涉及到的一个知识点。每一个同学在这里都可以掌握。下面咱们就针对thinkphp里面更新数据库的方法说一下。 第一种方法:$模型->where('id=1')->save($data);第二种方法:$模型->where('id=1')->data($data)->save();第三种方法:$模型->create();$模型->save();表单中必须包含一个以主键为名称的隐藏域。第四种方法:$模型->where('id=5')->setField('name','ThinkPHP');$模型->where('id=5')->setField(array('name','email'),array('TP','TP@163.com')); 第五种方法:$模型->setInc('score','id=5',3); // 积分加3$模型->setInc('score','id=5'); // 积分加1$模型->setDec('score','id=5',5); // 积分减5$模型->setDec('score','id=5'); // 积分减1 当然要掌握ThinkPHP,我们首先要了解其中的几个重要概念,了解Java开发的朋友,可能很容易理解下面的一些概念。Action对象和Struts框架的Action类似,Action对象主要提供应用逻辑的控制和处理,属于ThinkPHP的控制层,由核心的App类完成模块和操作的解析后直接转交给相应的Action对象处理。应用类中的所有Action对象都继承系统的Action基类。Dao对象是指DataAccessObject(数据访问对象),Dao设计模式把底层的数据访问逻辑和业务逻辑分开,夹在业务层与数据层中间,用于数据库访问和操作。可以针对单表和多表操作。ThinkPHP中的Dao对象属于建立在抽象数据库访问层之上的事务性对象。VO对象是指ValueObject(数据对象),更加精确的说是业务对象,因为VO对象是存活在业务层的,供业务逻辑使用的。VO对象和数据表存在一种映射关系,VO对象的每个属性对应数据表(或者视图)的一个字段,你完全可以添加其他非数据表字段的VO对象属性,以用于业务逻辑操作,例如关联字段。VO对象有个特殊的保留属性_info,是一个数组变量,用来保存该VO对象的一些特殊信息。和VO对象对应的概念还有PO(持久数据对象),VO和PO的概念都来自于O/RMapping(ObjectRelationalMapping,对象关系映射),PO只能用在数据层(也就是说PO对象的属性必须和数据表一一对应),VO用在业务逻辑层和表示层(可以有自己的额外属性)。各层操作属于该层自己的数据对象,这样就可以降低各层之间的耦合,便于以后系统的维护和扩展。如果将PO用在各个层中就相当于我们使用全局变量,我们知道在OO设计非常不赞成使用全局变量。VoList对象在ThinkPHP框架中,把查询后的数据集(ResultSet)转换成数据列表对象,也就是VOLIST对象,和ResultSet对象不同的是每个记录就相当于一个VO对象。在VOLIST对象中可以方便地遍历和操作VO对象。VO对象和VOLIST对象都属于ThinkPHP框架中的实体对象,是数据操作的基本元素。如果你在开发过程中没有使用Dao模式,而是通过数据库驱动类直接操作数据库,那么返回的是ResultSet对象。ThinkPHP系统提供了从ResultSet对象转换为VOLIST对象的方法。不管什么知识点,理论知识只是我们了解的手段,而最重要的还是要真正的能将技术用到自己的工作中。如果是初学者,推荐一下兄弟连把177<1011<6169,上课,运用,升华真正从技术操作方面掌握知识,区别大学教育,让自己真正掌握。学习学习
好东西谢谢楼主分享
页:
[1]