【发布时间】:2015-04-25 23:57:12
【问题描述】:
我基本上知道 php,但我对所有这些类的东西都是新手。现在 - 喜欢它。 这是我的问题:
我正在编写一个类来做所有关于帐户管理的事情。 (例如创建新帐户,获取帐户详细信息,检查帐户是否存在......) 在那个类中,我需要做一些 MySQL 请求。因此,我使用的是 medoo-class (http://www.medoo.in)。
class acc{
// Attributes
public static $account;
public $pw;
protected $error;
public function acc_exist() {
$database = new medoo();
$acc_count = $database->count("table_accounts", ["column_account" => acc::$account]);
if ($acc_count == 0) {return true;} else {$this->error .= "Account exists already!";};
}};
请注意以下行:
$database = new medoo();
和
$acc_count = $database->count("table_accounts", ["column_account" => acc::$account]);
在这里,我带来了 medoo。并且 ["column_account" => acc::$account] 确实有效。正如我在其他一些帖子中所读到的,我将 $accounts public static。
现在我这样称呼我的班级:
$my_acc = new acc();
$my_acc->account = 'Luci';
$my_acc->acc_exist();
我需要那样工作。在我的其余代码的上下文中,做一些 acc($account) 很困难。
但正如我所料,我得到一个错误:
严格标准:以非静态方式访问静态属性 acc::$account
我很清楚,静态保存了 var 的值。所以我需要一些其他的方法。有人有想法吗?
最好的,Lox
【问题讨论】:
-
您的代码中有错字 $accout 应该是 $account 我认为
-
你是对的——但这不是问题所在。只是更改了变量以便更好地理解。就像以前的 acc tbacc acccnt。