这里是我的示例代码级用户,但是当我加入的公共方法静态方法不工作:在PHP中,是否可以使用非静态方法将静态链接在一起?
<?php
namespace App\Classic;
class User
{
public $username;
public static $upassword;
public $age;
public $message;
public function username($username)
{
$this->username = $username;
echo $this->username."<br>";
return $this;
}
public static function password($upassword)
{
self::$upassword = $upassword;
echo self::$upassword."<br>";
}
public function age($age)
{
$this->age = $age;
echo $this->age."<br>";
return $this;
}
public function message($message)
{
$this->message = $message;
echo $this->message."<br>";
return $this;
}
}
,这是链接方法的副作用:
$user = new User();
$user::password('secret')
->username('admin')
->age(40)
->message('lorem ipsum');
或者,你可以只是停止使用静态方法和变量。因为它们使你的代码在程序本质上变得紧密,并且导致与特定类名的紧密耦合。 –
静态属性和方法没有任何理由存在。静态属性对于该类的所有实例都是通用的。 **是否要为所有用户使用相同的密码?** – axiac
噢好吧。谢谢 –