单例模式在PHP 5.2中不起作用

时间:2013-09-20 02:24:05

标签: php singleton php-5.2

我有这个简单的单身人士课程:

public static function getInstance() {                
    if (!self::$_controller) {
        self::$_controller = new self();
    }

    return self::$_controller;
}

使用PHP 5.3,这段代码似乎工作正常,但在PHP 5.2上似乎没有返回实例。我输入了一个简单的调试消息:

public static function getInstance() {                
    if (!self::$_controller) {
        self::$_controller = new self();
        echo "I seem to be working";
    }

    return self::$_controller;
}

但“我似乎在工作”从未得到回应。这里发生了什么,我该如何解决?

1 个答案:

答案 0 :(得分:2)

以下是PHP 5.3和5.2的结尾。

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('log_errors', 0);

class SingleTon {
        private static $_controller = null;

        private function __construct() {
                // do something here or leave it blank.
        }

        public static function getInstance() {
                if (!self::$_controller) {
                        self::$_controller = new self();
                        echo "I seem to be working";
                }

                return self::$_controller;
        }
}

$obj = SingleTon::getInstance();
echo "\n";

&GT;

显示&#34;我好像正在工作&#34;。如果您需要任何进一步的帮助,请告诉我。