如何操作tp5.1框架数据库-数据集-创新互联

这篇文章主要讲解了“如何操作tp5.1 框架数据库-数据集”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何操作tp5.1 框架数据库-数据集”吧!

创新互联公司是一家朝气蓬勃的网站建设公司。公司专注于为企业提供信息化建设解决方案。从事网站开发,网站制作,网站设计,网站模板,微信公众号开发,软件开发,小程序开发,10多年建站对成都围栏护栏等多个行业,拥有丰富建站经验。

本文实例讲述了tp5.1 框架数据库-数据集操作。分享给大家供大家参考,具体如下:

数据库的查询结果也就是数据集,默认的配置下,数据集的类型是一个二维数组,我们可以配置成数据集类,就可以支持对数据集更多的对象化操作,需要使用数据集类功能,可以配置数据库的resultset_type参数如下:

return [
  // 数据库类型
  'type'    => 'mysql',
  // 数据库连接DSN配置
  'dsn'     => '',
  // 服务器地址
  'hostname'  => '127.0.0.1',
  // 数据库名
  'database'  => 'thinkphp',
  // 数据库用户名
  'username'  => 'root',
  // 数据库密码
  'password'  => '',
  // 数据库连接端口
  'hostport'  => '',
  // 数据库连接参数
  'params'   => [],
  // 数据库编码默认采用utf8
  'charset'   => 'utf8',
  // 数据库表前缀
  'prefix'   => 'think_',
  // 数据集返回类型
  'resultset_type' => 'collection',
];

返回的数据集对象是think\Collection,提供了和数组无差别用法,并且另外封装了一些额外的方法。

在模型中进行数据集查询,全部返回数据集对象,但使用的是think\model\Collection类,但用法是一致的。

可以直接使用数组的方式操作数据集对象,例如:

// 获取数据集
$users = Db::name('user')->select();
// 直接操作第一个元素
$item = $users[0];
// 获取数据集记录数
$count = count($users);
// 遍历数据集
foreach($users as $user){
  echo $user['name'];
  echo $user['id'];
}

V5.1.23+版本开始,你可以在查询的时候指定是否需要返回数据集(无需配置resultset_type参数)

// 获取数据集
$users = Db::name('user')->fetchCollection()->select();
// 直接操作第一个元素
$item = $users[0];
// 获取数据集记录数
$count = count($users);
// 遍历数据集
foreach($users as $user){
  echo $user['name'];
  echo $user['id'];
}

V5.1.24+版本开始,fetchCollection方法支持传入使用的集合类名称。

需要注意的是,如果要判断数据集是否为空,不能直接使用empty判断,而必须使用数据集对象的isEmpty方法判断,例如:

$users = Db::name('user')->select();
if($users->isEmpty()){
  echo '数据集为空';
}

Collection类包含了下列主要方法:

方法描述
isEmpty是否为空
toArray转换为数组
all所有数据
merge合并其它数据
diff比较数组,返回差集
flip交换数据中的键和值
intersect比较数组,返回交集
keys返回数据中的所有键名
pop删除数据中的最后一个元素
shift删除数据中的第一个元素
unshift在数据开头插入一个元素
reduce通过使用用户自定义函数,以字符串返回数组
reverse数据倒序重排
chunk数据分隔为多个数据块
each给数据的每个元素执行回调
filter用回调函数过滤数据中的元素
column返回数据中的指定列
sort对数据排序
shuffle将数据打乱
slice截取数据中的一部分

感谢各位的阅读,以上就是“如何操作tp5.1 框架数据库-数据集”的内容了,经过本文的学习后,相信大家对如何操作tp5.1 框架数据库-数据集这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联网站建设公司,,小编将为大家推送更多相关知识点的文章,欢迎关注!


新闻名称:如何操作tp5.1框架数据库-数据集-创新互联
文章出自:http://scyanting.com/article/eijjp.html