나는 vb.net에서 일하는 나이에 PHP로 뛰어 들고있다.PHP 싱글턴 : 인스턴스를 가지고 있지 않다.
은 여기, 내 웹 애플리케이션을 통해 singleon으로 코드를 실행하는 로거 클래스 쓰기 싶어 :
class cLog{
private $data = NULL;
static private $instance = NULL;
static public function getInstance(){
if(self::$instance == NULL){
echo "empty!";
self::$instance = new cLog();
}
return self::$instance;
}
private function __construct(){
}
private function __clone(){
}
public function getData(){
return self::getInstance()->data;
}
public function trace($o){
self::getInstance()->data[] = $o;
}
}
내가 기대하는 것은, 즉 내가 방해에 여러 통화를 내 응용 프로그램의 페이지 사이를 전환로 :: trace() 메서드는 데이터 배열이 증가하고 모든 추적으로 채워집니다. 하지만 내가 얻을 수있는 것은 : 매번 페이지를 실행할 때마다 $ 인스턴스가 null이므로 개체가 다시 시작됩니다 (인스턴스 게터에 "빈"! 줄이 표시됨 : 매회 나타남)
좋은 제안이지만 제 purpouse는 PHP 기능을 사용합니다.코드 복사를 시작하면 일부 스크립트를 디버깅하는 데 문제가 있음을 알게 될 것입니다. 스크립트가 작동하는 방식조차 모릅니다. 어쩌면 내가 한 번 해보고 영감을 얻지 만 내 수업의 실제 문제 (내 문제)는 내가 .NET에서 더 이상 개발하지 않는다는 것을 이해하지 못했다는 것입니다. – balanza