类中的PHP数组在函数中生成

时间:2012-02-10 08:20:54

标签: php arrays class function

我遇到了一个我正在处理的脚本的问题:我需要在query_person()函数中生成的规范生成的数组保存在protected static $users中以便在脚本中使用。这只是我做的一个快速测试,通常是由查询生成的数组。 如果我这样做,脚本可以工作:

protected static $users = array('paul' => array('p_gebruikersnaam' => "paul", 'p_wachtwoord' => "de3c41cc7918c25822f1fb840a86a84b", 'p_id' => "10000000", 'p_md5' => "d1ca3aaf52b41acd68ebb3bf69079bd1")
);

但是由于数组是由db查询生成的,我必须将查询放在一个函数中,但它不能像这样工作:

protected static $users = array();

public function query_personen(){   
$users = array('paul' => array('p_gebruikersnaam' => "paul", 'p_wachtwoord' => "de3c41cc7918c25822f140a86a84b", 'p_id' => "100000", 'p_md5' => "d1ca3aaf52b41acd68e9079bd1")
);
}

如何让它工作,以便第二个脚本生成与第一个脚本相同的输出?

1 个答案:

答案 0 :(得分:1)

public function query_personen(){   
$this->users = array('paul' => array('p_gebruikersnaam' => "paul", 'p_wachtwoord' => "de3c41cc7918c25822f140a86a84b", 'p_id' => "100000", 'p_md5' => "d1ca3aaf52b41acd68e9079bd1")
);

您需要使用$this来引用该对象。

如果您希望它是静态的,您应该使用:

public static function query_personen(){   
self::$users = array('paul' => array('p_gebruikersnaam' => "paul", 'p_wachtwoord' => "de3c41cc7918c25822f140a86a84b", 'p_id' => "100000", 'p_md5' => "d1ca3aaf52b41acd68e9079bd1")
);

请注意,第二个函数是static函数(示例中的函数不是这样,您应该使用第一个版本)。