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 cout&amp;lt;&amp;lt;的一点看法
Jan 24 PHP
PHP JSON 数据解析代码
May 26 PHP
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
Jun 11 PHP
PHP的SQL注入实现(测试代码安全不错)
Feb 27 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
Jun 06 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 PHP
PHP输出九九乘法表代码实例
Mar 27 PHP
两种php去除二维数组的重复项方法
Nov 04 PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
Apr 07 PHP
PHP简单获取及判断提交来源的方法
Apr 22 PHP
php获取用户真实IP和防刷机制的实例代码
Nov 28 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
May 31 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+mysqli事务控制实现银行转账实例
2015/01/29 PHP
php和editplus正则表达式去除空白行
2015/04/17 PHP
php微信开发之谷歌测距
2018/06/14 PHP
JS在IE和FF下attachEvent,addEventListener学习笔记
2009/11/26 Javascript
悄悄用脚本检查你访问过哪些网站的代码
2010/12/04 Javascript
jQuery EasyUI API 中文文档 - NumberSpinner数值微调器使用介绍
2011/10/21 Javascript
js判断样式className同时增加class或删除class
2013/01/30 Javascript
JavaScript通过prototype给对象定义属性用法实例
2015/03/23 Javascript
Bootstrap轮播插件简单使用方法介绍
2016/06/21 Javascript
基于jQuery实现弹出可关闭遮罩提示框实例代码
2016/07/18 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
react native基于FlatList下拉刷新上拉加载实现代码示例
2018/09/30 Javascript
详解关于Vuex的action传入多个参数的问题
2019/02/22 Javascript
NodeJs操作MongoDB教程之分页功能以及常见问题
2019/04/09 NodeJs
详解vue更改头像功能实现
2019/04/28 Javascript
在Django的模型中执行原始SQL查询的方法
2015/07/21 Python
Python实现带百分比的进度条
2016/06/28 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
python实现合并两个排序的链表
2019/03/03 Python
使用浏览器访问python写的服务器程序
2019/10/10 Python
python 日志 logging模块详细解析
2020/03/31 Python
python 画条形图(柱状图)实例
2020/04/24 Python
Python调用shell命令常用方法(4种)
2020/05/11 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
2020/06/02 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
Python 捕获代码中所有异常的方法
2020/08/03 Python
CSS3五个技巧给你的网站带来出色的效果
2009/04/02 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
华为的Java面试题
2014/03/07 面试题
编程实现去掉XML的重复结点
2014/05/28 面试题
班干部演讲稿
2014/04/24 职场文书
校园环保标语
2014/06/13 职场文书
给老婆的保证书
2015/01/16 职场文书
第一节英语课开场白
2015/06/01 职场文书
2015年政治教研组工作总结
2015/07/22 职场文书
《狼牙山五壮士》教学反思
2016/02/17 职场文书