ThinkPHP5.1框架数据库链接和增删改查操作示例


Posted in PHP onAugust 03, 2019

本文实例讲述了ThinkPHP5.1框架数据库链接和增删改查操作。分享给大家供大家参考,具体如下:

一、数据库的链接方式

<?php
namespace app\index\controller;
use think\Db;
class Demo
{
//1、全局配置 config/database.php配置
public function dbTest()
{
return Db::table('pzq_article')
->where('id','29')
->value('title');
}
//2、动态配置 think\db\Query.php中有一个方法connect()
public function dbTest2()
{
return Db::connect([
'type'=>'mysql',
'hostname'=>'localhost',
'database'=>'top789',
'username'=>'root',
'password'=>'root',
])
->table('pzq_article')
->where('id','76')
->value('title');
}
//3、DSN连接
public function dbTest3()
{
$dsn = 'mysql://root:root@localhost:3306/top789#utf8';
return Db::connect($dsn)
->table('pzq_article')
->where('id','88')
->value('title');
}
//4、单条查旬
public function dbTest4()
{
$res = Db::table('pzq_article')
->field(['title'=>'标题','id'=>'编号'])//可添加别名
->where('id','=',20)//如果是等号,=可以省略
->find();//如果是主键查询,可省略上面where,这行写->find(20);
dump(is_null($res)?'没有查到':$res);
}
//5、多条查旬
public function dbTest5()
{
$res = Db::table('pzq_article')
->field(['id','cat_id','title'])
->where([
['id','>',20],
['cat_id','=',2],
])//一个条件,直接用表达式->where('id','>',20)。多个条件用数组
->order('id desc')->limit(3)->select();
if(empty($res)){
return '没有查到';
}else{
dump($res);
}
}
//6、数据添加
public function dbTest6()
{
$data = [
'name'=>'Sam2',
'age'=>'29',
'posttime'=>time()
];
$dataall=[
['name'=>'Sam3','age'=>'29','posttime'=>time()],
['name'=>'Sam4','age'=>'30','posttime'=>time()],
];
//(1)单条插入
//return Db::table('test')->data($data)->insert();
//(2)插入同时返回新增主键id
//return Db::table('test')->insertGetId($data);
//(3)插入多条数据
return Db::table('test')->data($dataall)->insertAll();
}
//更新数据
public function dbTest7()
{
// return Db::table('test')
// ->where('id','=',4)
// ->update(['name'=>'SamC','age'=>'31']);
//如果where条件是主键,还可以如下使用
return Db::table('test')
->update(['name'=>'SamCheng','age'=>'30','id'=>4]);
}
//删除操作
public function dbTest8()
{
//return Db::table('test')->delete(6);
//或者
return Db::table('test')->where('id',5)->delete();
}
//mysql原生语句 查询
public function dbTest9()
{
$sql = "select name,age from test where id>2";
dump(Db::query($sql));
}
//mysql 增、删、改 用Db::execute($sql)
public function dbTest10()
{
//$sql = "update test set name='samC' where id=4";
//$sql = "insert test set name='Yan',age='30'";
$sql = "delete from test where id=4";
return Db::execute($sql);
}
}

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php中apc缓存使用示例
Dec 25 PHP
php读取目录所有文件信息dir示例
Mar 18 PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
Jul 01 PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 PHP
非常全面的php日期时间运算汇总
Nov 04 PHP
优化WordPress的Google字体以加速国内服务器上的运行
Nov 24 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
CI框架表单验证实例详解
Nov 21 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
Dec 08 PHP
实例讲解通过​PHP创建数据库
Jan 20 PHP
php生成静态页面并实现预览功能
Jun 27 PHP
解决Laravel 使用insert插入数据,字段created_at为0000的问题
Oct 11 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
Aug 03 #PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
Aug 03 #PHP
thinkPHP5.1框架中Request类四种调用方式示例
Aug 03 #PHP
Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解
Aug 02 #PHP
php抽象类和接口知识点整理总结
Aug 02 #PHP
使用composer 安装 laravel框架的方法图文详解
Aug 02 #PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 #PHP
You might like
PHP下MAIL的另一解决方案
2006/10/09 PHP
PHP执行速率优化技巧小结
2008/03/15 PHP
PHP静态成员变量
2017/02/14 PHP
Laravel自定义 封装便捷返回Json数据格式的引用方法
2019/09/29 PHP
取得传值的函数
2006/10/27 Javascript
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
2007/03/27 Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
2013/06/12 Javascript
IE6 hack for js 集锦
2014/09/23 Javascript
浅析node.js中close事件
2014/11/26 Javascript
基于jQuery实现的文字按钮表单特效整理
2014/12/07 Javascript
AngularJS使用angular-formly进行表单验证
2015/12/27 Javascript
gulp-htmlmin压缩html的gulp插件实例代码
2016/06/06 Javascript
javaScript 事件绑定、事件冒泡、事件捕获和事件执行顺序整理总结
2016/10/10 Javascript
使用Angular.js实现简单的购物车功能
2016/11/21 Javascript
文件上传的几个示例分享【推荐】
2016/12/16 Javascript
jQuery实现页面滚动时智能浮动定位
2017/01/08 Javascript
js实现选项卡内容切换以及折叠和展开效果【推荐】
2017/01/08 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
2017/07/11 jQuery
vue2 mint-ui loadmore实现下拉刷新,上拉更多功能
2018/03/21 Javascript
基于vue.js中关于下拉框的值默认及绑定问题
2018/08/22 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
基于jQuery实现可编辑的表格
2019/12/11 jQuery
vue.js实现简单的计算器功能
2020/02/22 Javascript
使用JavaScript获取扫码枪扫描得到的条形码的思路代码详解
2020/06/10 Javascript
python的几种开发工具介绍
2007/03/07 Python
python开发之tkinter实现图形随鼠标移动的方法
2015/11/11 Python
Python DataFrame.groupby()聚合函数,分组级运算
2018/09/18 Python
Python功能点实现:函数级/代码块级计时器
2019/01/02 Python
详解Python logging调用Logger.info方法的处理过程
2019/02/12 Python
Python list运算操作代码实例解析
2020/01/20 Python
python模拟哔哩哔哩滑块登入验证的实现
2020/04/24 Python
python实现Oracle查询分组的方法示例
2020/04/30 Python
庆元旦迎新年广播稿
2014/02/18 职场文书
安全生产承诺书范文
2014/05/22 职场文书
2015年学生会个人工作总结
2015/04/09 职场文书
nginx安装以及配置的详细过程记录
2021/09/15 Servers