테스트, 나 당신이 찾아 알려주세요.
편집 : 또한이 특정 상황에서 사용자가 하위 클래스 화하는 것을 방지해야하는 이유에 대해 확신 할 수 없습니다. 누군가가 PHP 코드를 하위 클래스에 액세스 할 수 있으면 코드에 액세스하여 코드를 복사하고 액세스 한정자를 (어떤 이유로 든) 적합한 것으로 변경하는 코드에 액세스 할 수 있습니다.
이 경우 Singleton의 실질적인 유용성은 사용하면 주어진 HTTP 요청에 대해 항상 동일한 데이터베이스 연결을 사용한다는 것입니다. 그것은 그것을 성취합니다. 다른 것들 (final
과 개인 생성자 사용)은 이론의 관점에서 알기에 유용하며, 다른 프로그래머에게 API 수준의 코드를 배포하려는 경우에 더 유용하지만,이 특정 예에서는 모든 키워드 클래스 파일의 크기에 바이트를 추가하는 것입니다.
$date1 = TheDate::getDateInstance();
echo $date1->getDateVal() . "<br />";
$date2 = TheDate::getDateInstance();
echo $date2->getDateVal() . "<br />";
그리고이 아무튼 일이 같은 일을
class TheDate
{
private static $DateInstance = null;
private $dateVal;
public static function getDateInstance()
{
if(!isset(self::$DateInstance))
{
self::$DateInstance = new TheDate();
}
return self::$DateInstance;
}
public static function getDateVal()
{
return self::$DateInstance->dateVal;
}
private function __construct()
{
$this->dateVal = strftime("%Y-%m-%d %H:%M:%S");
}
}
분명히 반복해서 나에게 동일한 날짜를 제공합니다
그건 의견이 아닌 대답이지만 좋은 지적입니다. –