laravel--访问器

模型中定义函数 getFirstNameAttribute 声明一个访问器,例如

class User extends Eloquent {

    public function getFirstNameAttribute($value)
    {
        return ucfirst($value);
    }
}

在上面的例子中,first_name 字段有一个访问器。注意属性的值被传递到访问器。一旦创建了访问器,只需将属性添加到模型的appends属性中:

protected $appends = array('is_admin');

一旦将属性添加到appends列表中,它就将被包含在模型和JSON表单中。

示例:

class Elite extends Eloquent{
    public $table = 'elite';
    protected $guarded = array('id');
    protected $appends = array('label');
    public $timestamps = true;

    //设置label查询属性
    public function getLabelAttribute()
    {
        $date = date('Y-m-d H:i:s',time());
        $start_at = $this->attributes['started_at'];
        $end_at =   $this->attributes['end_at'];
        if($start_at > $date){
            return '1';
        }elseif($start_at < $date && $end_at >$date){
            return '2';
        }else{
            return '3';
        }
    }
}

返回json格式数据:

laravel--访问器_第1张图片

你可能感兴趣的:(框架)