Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在雄辩的PHP中使用变量附加属性_Php_Eloquent - Fatal编程技术网

如何在雄辩的PHP中使用变量附加属性

如何在雄辩的PHP中使用变量附加属性,php,eloquent,Php,Eloquent,我从Eloquent开始,我想为依赖于变量的模型添加一个新属性 我添加了几个自定义属性,如下所示: protected $appends = ['people']; public function getPeopleAttribute() { return $this->users()->where('active', '=', 1)->count(); } protected $appends = ['people', 'similars']; public fun

我从Eloquent开始,我想为依赖于变量的模型添加一个新属性

我添加了几个自定义属性,如下所示:

protected $appends = ['people'];
public function getPeopleAttribute() {
    return $this->users()->where('active', '=', 1)->count();
}
protected $appends = ['people', 'similars'];
public function getSimilarsAttribute() {
    return $this->users()->where('property', '=', $variable)->count();
}
但我需要添加一个新属性,该属性取决于一个变量,如下所示:

protected $appends = ['people'];
public function getPeopleAttribute() {
    return $this->users()->where('active', '=', 1)->count();
}
protected $appends = ['people', 'similars'];
public function getSimilarsAttribute() {
    return $this->users()->where('property', '=', $variable)->count();
}
如何将$variable传递给getter


谢谢大家!

这是不可能的,因为您实际上要使用
$model->similor
,而这是您无法赋予变量的

以下是您如何做到这一点()


如果您使用它,您只需执行
YourModel::similar('fooBar')

这是不可能的,因为您实际上要使用
$model->similar
,这是您无法赋予变量的

以下是您如何做到这一点()


如果您使用它,您只需执行
YourModel::similars('fooBar')

嗨,道格拉斯D3,谢谢您的回答,但它不起作用。我需要向模型添加一个新属性,该属性取决于变量、自定义选择,而不是where条件。如果我得到了作用域的目标,它会向查询添加一个条件,但不会向select添加属性值。无论如何,谢谢你。我不知道示波器,它在未来可能会很有用。嗨,道格拉斯,谢谢你的回答,但它不起作用。我需要向模型添加一个新属性,该属性取决于变量、自定义选择,而不是where条件。如果我得到了作用域的目标,它会向查询添加一个条件,但不会向select添加属性值。无论如何,谢谢你。我不知道示波器,将来可能会有用