`

ThinkPHP的getField用法

    博客分类:
  • PHP
阅读更多

getField方法是ThinkPHP中用来获取字段值的方法,区别于select和find方法,通常仅用于获取个别字段的值。但是事实上并没有那么简单,该方法的用法总结如下:

 

获取某个字段值

这个是getField方法最基本的用法,用于获取符合条件的某个字段值。

  1. $User = M("User"); // 实例化User对象
  2.  // 获取ID为3的用户的昵称 
  3. $nickname = $User->where('id=3')->getField('nickname');
复制代码
 

返回的nickname是一个字符串结果。也就是说,即使有满足条件的多个字段,也只会返回一个结果。

获取某个字段列

如果希望返回符合要求的字段列(多个结果),可以使用:

  1. $User = M("User"); // 实例化User对象
  2.  // 获取status为1的用户的昵称列表
  3. $nickname = $User->where('status=1')->getField('nickname',true);
复制代码
 

第二个参数传入了true,返回的nickname则是一个数组,包含了所有满足条件的昵称列表。

如果需要限制返回结果数量,可以使用:

  1. $nickname = $User->where('status=1')->getField('nickname',8);
复制代码
 

或者

  1. $nickname = $User->where('status=1')->limit(8)->getField('nickname',true);
复制代码
 

 

获取2个字段列表

如果希望获取满足条件的id和昵称列表,则可以使用:

  1. $User = M("User"); // 实例化User对象
  2.  // 获取status为1的用户的昵称列表
  3. $nickname = $User->where('status=1')->getField('id,nickname');
复制代码
 

如果getField方法传入多个字段名称的话,默认返回一个关联数组,以第一个字段的值为索引(所以第一个字段要尽量选择不会重复的)。
也可以限制返回数量,例如:

  1. $nickname = $User->where('status=1')->getField('id,nickname',8);
复制代码
 

或者

  1. $nickname = $User->where('status=1')->limit(8)->getField('id,nickname');
复制代码
 

 

获取多个字段列表

如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值),例如:

  1. $result = $User->where('status=1')->getField('id,account,nickname');
复制代码
 

如果不希望返回二维数组,可以使用连接符,例如:

  1. $result = $User->where('status=1')->getField('id,account,nickname',':');
复制代码
 

那么返回的结果则是一个索引数组,键名是id值,键值则是account:nickname连接组成的字符串。

getField方法通常还可以配合连贯操作where、limit、order等一起使用。还有一些高级的用法,包括对join表的支持和sql方法的支持等。

分享到:
评论

相关推荐

    ThinkPHP之getField详解

    主要介绍了ThinkPHP的getField方法,需要的朋友可以参考下

    thinkphp下使用soap

    thinkphp内使用soap 把下载的soap解压放到ThinkPHP\Extend\Vendor目录下 名字是soap 调用方法: function test($url,$method,$data){ vendor('soap.class#nusoap'); //从soap目录导class.nusoap.php类文件 $...

    Thinkphp使用mongodb数据库实现多条件查询方法

    主要介绍了Thinkphp使用mongodb数据库实现多条件查询方法,修改了mongodb驱动文件来实现复合查询、多条件查询,需要的朋友可以参考下

    ThinkPHP3.1完全开发手册

    ThinkPHP3.1完全开发手册 版权申明 发布本资料须遵守开放出版许可协议 1.0 或者更新版本。 未经版权所有者明确授权,禁止发行本文档及其被实质上修改的版本。 未经版权所有者事先授权,禁止将此作品及其衍生作品以...

    Thinkphp5整合excel导入导出

    Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel导入导出Thinkphp5整合excel...

    ThinkPHP_v5.0.7.zip_ThinkPHP V5.0.7_thinkphp

    ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布

    thinkphp+pgsql

    解决thinkphp不能兼容pgsql的问题,在开发过程中不能读取数据库。希望对大家有用。

    thinkphp漏洞检测工具

    thinkphp漏洞检测工具

    基于ThinkPHP5小区物业管理系统

    基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理系统基于ThinkPHP5小区物业管理...

    ThinkPHP6.pdf

    Thinkphp6入门到实战

    130套thinkphp5网站模板源码,企业网站建设thinkphp模板,建站thinkphp源码模板网站搭建

    130套thinkphp5网站模板源码,企业网站建设thinkphp模板,建站thinkphp源码模板网站搭建

    thinkphp_thinkphp_thinkphp5_

    thinkphp开发模板,把常用的功能都写好了,可以直接使用

    thinkphp完整源码.rar

    thinkphp完整源码.rar

    thinkphp后台管理系统

    thinkphp是一个基于thinkphp6的后台管理系统,对标laravel-admin。 think-admin特色: 1、composer库一键安装,丰富的配置项目 2、根据数据库自动生成增删改查,并生成相应的菜单和权限,减少基础机械重复工作 3、...

    thinkphp3.2 memcached 类库 使用方法

    /** * Memcached */ 'PERSISTENTID' => 'mlm_cache',//持久链接标示 'MEMCACHED_HOST' => '127.0.0.1', //可数组形式 'MEMCACHED_PORT' => '12000',//可数组形式 ...\ThinkPHP\Library\Think\Cache\Driver 文件夹下

    ThinkPHP5快速入门手册

    最新ThinkPHP 5快速入门手册,学习ThinkPHP好帮手。

    ThinkPHP5.0.5完整版_ThinkPHP_full_v5.0.5

    ThinkPHP5.0.5完整版_ThinkPHP_full_v5.0.5 欢迎关注PHP学习博客:http://blog.csdn.net/column/details/14209.html

    thinkphp快速入门

    thinkphp快速入门,实例介绍thinkphp的使用方法

    ThinkPHP v3.2.3 完整版.rar

    ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,遵循... ThinkPHP遵循Apache2开源许可协议发布,意味着你可以免费使用ThinkPHP,甚至允许把你基于ThinkPHP开发的应用开源或商业产 品发布/销售。

Global site tag (gtag.js) - Google Analytics