1--TEST-- 2ZE2 singleton 3--SKIPIF-- 4<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> 5--FILE-- 6<?php 7 8class Counter { 9 private $counter = 0; 10 11 function increment_and_print() { 12 echo ++$this->counter; 13 echo "\n"; 14 } 15} 16 17 18class SingletonCounter { 19 private static $m_instance = NULL; 20 21 static function Instance() { 22 if (self::$m_instance == NULL) { 23 self::$m_instance = new Counter(); 24 } 25 return self::$m_instance; 26 } 27} 28 29SingletonCounter::Instance()->increment_and_print(); 30SingletonCounter::Instance()->increment_and_print(); 31SingletonCounter::Instance()->increment_and_print(); 32 33?> 34--EXPECT-- 351 362 373 38