thinkPhp3.2 field和getField区别

    在做数据库查询的时候,经常用到 field、getfield, 今天就做一下总结。希望以后能记住。。
    field()用于定义要查询的字段(支持字段排除)        用法 : field ($field ,$except = false)        参数 : $field ---   字段名,要查询的字段名;                    $except ---  是否排除,默认是false,一般省略不写;如果是true,表示定义的字段为数据表中排除$filed参数定义之外的所有字段              注 :不调用field方法,默认返回所有的字段,和field(*) 等效。       例如:       $model -> field('status',true) -> select();        获取除了status之外的所有字段       $model -> field('id','nickname') -> select();      获取id和nickname字段
     getField() : 用于查询某个字段的值      用法 :getField ($field,$sepa = null)      参数: $field --- 要获取的字段字符串 (多个用,隔开)                $sepa --- 字段数据间隔符号,如果是null返回数组为数组。默认为null      返回值 : 如果查询结果为空返回null,如果field是一个字段则返回该字段的值,如果field是多个字段,返回数组。数组的索引是第一个字段的值,sepa为null则返回二维数组。
     示例:当只有一个字段的时候,默认返回一个值。      //获取id为3的用户昵称      $nickname = $model->where('id=3')->getField('nickname') ;
     示例:如果需要返回整个列的数据      $model -> getField('id',true);      //获取id数组      //返回数据格式如array(1,2,3,4,5)一维数组,其中value就是id列的每行的值
    示例 : 如果传入多个字段的话,默认返回一个关联数组     $model -> getField ('id,nickname');      //两个字段的情况下返回的是array(`id`=>`nickname`)的关联数组,以id的值为key,nickname字段值为value
     $model -> getField('id,nickname,age');      //返回的数组格式是array(`id` => array(`id`=> value , `nickname` => value , `email` => value) )是一个二维数组,类似于将select()方法的结果遍历将id的值设为数组key
     //如果传入一个字符串分隔符      $model -> getField('id,nickname,age',':');     //返回的结果就是一个数组,键名是用户id,键值是nickname : age的输出字符串
    //getField方法还可以支持限制数量    $model -> getField('id , nickname',5);    // 返回数组格式 array(`id` => `nickname`)    $model -> getField('id',5);    //返回数组格式array(1,2,3,4,5);            


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部