Php 如何在Yii中定义可调用变量
当我使用yii\filters\auth\HttpBasicAuth时 我想自定义public$auth,它是@var可调用的,因此我可以这样使用它:Php 如何在Yii中定义可调用变量,php,yii,yii2,Php,Yii,Yii2,当我使用yii\filters\auth\HttpBasicAuth时 我想自定义public$auth,它是@var可调用的,因此我可以这样使用它: $identity = call_user_func($this->auth, $username, $password); 但是如何用下面的代码定义它呢 以下代码是此可调用函数的典型实现: function ($username, $password) { return \app\models\User::findOne([
$identity = call_user_func($this->auth, $username, $password);
但是如何用下面的代码定义它呢
以下代码是此可调用函数的典型实现:
function ($username, $password) {
return \app\models\User::findOne([
'username' => $username,
'password' => $password,
]);
}
为什么我不能像这个错误报告那样定义它
public $auth=function ($username, $password) {
return \app\models\User2::findOne([
'username' => $username,
'password_hash' => $password,
]);
记住适当地命名函数。与其调用变量,不如调用函数,或者如果需要添加功能,可以扩展函数
public functionAuth ($username, $password) {
return \app\models\User2::findOne([
'username' => $username,
'password_hash' => $password,
]);
我也不建议编辑yii文件,我总是会做一个新的函数来扩展它,然后添加你想要的自定义项,但是我需要使用下面的代码来调用可调用变量://$identity=call\u user\u func$this->auth,$username,$password;如果你能更详细地解释你将用它做什么,我可以进一步帮助你。您正在构建的是登录系统吗?