인스턴스화 할 때 사용해야하는 기본 데이터베이스 연결이 포함 된 각 클래스에 정적 멤버를 추가하려고합니다. 방법은 다음과 같습니다.PHP에서 변수 클래스의 정적 멤버 설정
<?php //other classes extend Generic
class Generic {
public static $defaultDatabase;
public $db;
function __construct (&$pDatabase = null){
if ($pDatabase!==null)
$this->db = &$pDatabase;
else
$this->db = &$defaultDatabase;
}
}
?>
<?php
include_once("/classes/class.Database.php");
$db = new Database ("localhost", "username", "password", "TestDatabase");
$classes = array("Generic", "Member");
foreach ($classes as $class){
include_once("/classes/class.$class.php");
$class::defaultDatabase = &$db;//throws error here, unexpected "="
}
?>
내가 뭘 잘못하고 있니? 이 더 좋은 방법이 있나요 아니면 개별적으로 각 클래스에 대한 defaultDatabase 설정해야합니까? 나는 PHP 5.3을 사용하고 있는데, 이것은 내가 이와 같은 것을 지원해야한다는 것을 이해한다. static properties 액세스 할
잘 알고 있습니다. ,하지만 내가 필요한 대답은 아닙니다. 그래도 고마워. – watchwood