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 相关文章推荐
超强分页类2.0发布,支持自定义风格,默认4种显示模式
Jan 02 PHP
遍历指定目录下的所有目录和文件的php代码
Nov 27 PHP
用PHP实现Ftp用户的在线管理
Feb 16 PHP
PHP中的正则表达式函数介绍
Feb 27 PHP
通过缓存数据库结果提高PHP性能的原理介绍
Sep 05 PHP
php中使用session防止用户非法登录后台的方法
Jan 27 PHP
基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据
Sep 23 PHP
apache和PHP如何整合在一起
Oct 12 PHP
PHP工程师VIM配置分享
Dec 15 PHP
yii2 RBAC使用DbManager实现后台权限判断的方法
Jul 23 PHP
php 使用curl模拟ip和来源进行访问的实现方法
May 02 PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
May 29 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
新版mysql+apache+php Linux安装指南
2006/10/09 PHP
截获网站title标签之家内容的例子
2006/10/09 PHP
php实现上传图片保存到数据库的方法
2015/02/11 PHP
PHP实现的策略模式简单示例
2017/08/25 PHP
jquery Mobile入门—外部链接切换示例代码
2013/01/08 Javascript
js中页面的重新加载(当前页面/上级页面)及frame或iframe元素引用介绍
2013/01/24 Javascript
jquery三个关闭弹出层的小示例
2013/11/05 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
浅谈Javascript中substr和substring的区别
2015/09/30 Javascript
基于JavaScript实现在新的tab页打开url
2016/08/04 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
微信小程序 如何引入外部字体库iconfont的图标
2018/01/31 Javascript
详解如何快速配置webpack多入口脚手架
2018/12/28 Javascript
jQuery zTree树插件的使用教程
2019/08/16 jQuery
微信小程序获取当前时间及星期几的实例代码
2020/09/20 Javascript
vue中defineProperty和Proxy的区别详解
2020/11/30 Vue.js
Python爬取个人微信朋友信息操作示例
2018/08/03 Python
python实现批量文件重命名
2019/10/31 Python
Python BeautifulReport可视化报告代码实例
2020/04/13 Python
在CentOS7下安装Python3教程解析
2020/07/09 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
python中的测试框架
2020/11/13 Python
使用 css3 实现圆形进度条的示例
2017/07/05 HTML / CSS
美国知名女性服饰品牌:New York & Company
2017/03/23 全球购物
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
竞聘演讲稿范文
2014/01/12 职场文书
实用的简历自我评价
2014/03/06 职场文书
四风问题查摆材料
2014/08/25 职场文书
教育项目合作协议书格式
2014/10/17 职场文书
学校师德师风整改方案
2014/10/28 职场文书
2015年人事专员工作总结
2015/04/29 职场文书
《陶罐和铁罐》教学反思
2016/03/03 职场文书
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL
JavaScript中时间格式化新思路toLocaleString()
2021/11/07 Javascript