|
Posted by Darko on 11/14/07 04:00
On Nov 14, 12:04 am, Rob Wilkerson <r.d.wilker...@gmail.com> wrote:
> Hey all -
>
> Not being a seasoned PHP developer, tonight I started playing with the
> use of the Singleton pattern to store configuration information. What
> I was surprised to find was that the instance - at least the one I'm
> creating - isn't really a singleton. With each request, the
> constructor is called. Isn't that very much *not* a singleton or am I
> misunderstanding or doing something wrong? I'm using a pretty simple
> case:
>
> class Config
> {
> private static $instance;
>
> private function __construct() {
> echo '<p>Constructing</p>';
> }
>
> public static function getInstance()
> {
> if (!self::$instance)
> {
> self::$instance = new self();
> }
>
> return self::$instance;
> }
> public function clear() {
> echo '<p>clearing...</p>';
> self::$instance = null;
> }
>
> }
>
> What am I not doing or not understanding?
>
> Any insight would be greatly appreciated.
>
> Rob
I added this code, under the class definition:
$instance = Config::getInstance();
$instance = Config::getInstance();
$instance = Config::getInstance();
$instance = Config::getInstance();
And this is the output:
<p>Constructing</p>
So, you've probably screwed other code up.
Cheers
Navigation:
[Reply to this message]
|