模型中定义函数 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格式数据: