PHP之ThinkPHP框架(数据库)

前端之家收集整理的这篇文章主要介绍了PHP之ThinkPHP框架(数据库)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP是网站后台开发语言,其重要的操作对象莫过于数据库,之前有了解过MysqLi和pdo,但ThinkPHP数据库交互必须使用其特定的封装方法,或者可以认为其是对PHP数据库操作的进一步封装,以达到更加安全和高效。

ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。采用PDO方式,目前包含了MysqLsqlServer、Pgsqlsqlite等数据库支持

数据库连接配置在APP目录下的database.PHP中进行相关参数的配置

测试准备工作

建立数据表tb_test,并在database.PHP中配置('prefix'  => 'tb_',)使表前缀为tb_,然后建立模板Test.PHP,控制器Testx.PHP

控制器Testx.PHP实现

PHP = Test(); =->testshow();调用模板中的方法 dump();输出 18 }

sql语句数据库操作

使用execute()和query()方法实现数据库操作,是直接使用sql原生语句进行数据表操作

execute可实现数据表的增、删、改,操作后会返回影响行数

query可实现数据表的增、删、改、查,只有查询会返回结果

 模板Test.PHP实现:

PHP Test 方法1 方法2 查询 查询结果数组 =Test::query("insert into tb_test values(?,[19,"W12","X12","N12" }

添加语句

模板Test.PHP实现:

PHP Test '东小东','text2' => '100']; = ['text1' => '东小东1','text2' => '100'], ['text1' => '东小东2', ['text1' => '东小东3', =Test::insertAll( }

基于PDO的删除语句

模板Test.PHP实现:

PHP Test delete(); 30 =Test::where('id','>',30)->17 }

基于PDO的修改语句

模板Test.PHP实现:

PHP Test 修改的值和原来相同,则返回0 update(['text3' => '99999']); setInc('id',2); =Test::where('text1',"dongxiaodong")->setDec('id',2 }

查询语句

模板Test.PHP实现:

PHP Test 查询数据库表的全部信息 查询 select(); 查询符合条件的第一条数据,结果不存在返回null find(); 查询某个字段的值,只能查询到第一个,失败返回空 value('text2'); 查询某个字段的值,查询所有,失败返回空数组 column('text3'); 查询 like,不区分大小写,返回数组 =Test::where("text1","like","%W%")-> 查询,返回数组 select(); 统计行数 ( 方法打印 功能 }

PHP Test where("text1","%W%") select(); select(); whereOr("text1","%W%") select(); =Test::where("text1|text3","%W%" -> }

获取到表的字段,类型,主键等信息,返回数组 =Test:: =Test::where("id",12 ->order("id") 添加实参desc为降序,默认asc ->limit(0,10)获取第[0,10]条数据 page("3,10") //分页,参数1为当前页,参数2为每页的条数 ->field("id,text3") 提取的字段 ->whereOr("text1","%W%") ->select();

数据库

以上是使用模板继承Model来实现数据库操作的,当然还有另一种数据库的操作方法,那就是使用系统的Db模块。如果使用该模块则必须先use think\Db;

PHP '东小东','text2' => '222222']; insert($daa); 查询1 加上表的前缀 select(); 查询2 =Db::query("select * from tb_test" }

  


参考:

PHP.cn/">http://www.thinkPHP.cn/

猜你在找的ThinkPHP相关文章