thinkphp中field()和getfield()区别

field():用于定义要查询的字段(支持字段排除),返回里面字段的值,

 getField():用于查询某个字段的值​,  返回值:如果查询结果为空返回null,如果field是一个字段则返回该字段的值,如果field是多个字段,返回数组。数组的索引是第一个字段的值,sepa为null则返回二维数组。

  示例:当只有一个字段的时候,默认返回一个值。

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

        示例:如果需要返回数组:

$this->getField('id',true); // 获取id数组

        示例:如果传入多个字段的话,默认返回一个关联数组,

                    返回的list是一个数组,键名是用户的id, 键值是用户的昵称nickname。

$User = M("User"); // 实例化User对象
// 获取所有用户的ID和昵称列表 
$list = $User->getField('id,nickname');

         示例:如果传入多个字段的名称,例如:

$list = $User->getField('id,nickname,email');

        它返回的是一个二维数组,类似select方法的返回结果,区别的是这个二维数组的键名是用户的id(准确的说是:getField方法的第一个字段名)。如果传入了2个以上的字段名,则返回一个二维数组(类似select方法的返回值,区别在于索引是二维数组的键名是第一个字段的值)

你可能感兴趣的:(ThinkPHP3.2.3)