<?php
include('../objectmanager.php');
class Test {
protected static $idx = 0;
protected $index;
function __construct() {
static::$idx++;
$this->index = static::$idx;
echo "Constructed ".__CLASS__." ".static::$idx.PHP_EOL;
}
function Hello() {
echo "Hello, world!".PHP_EOL;
echo "This is object ".$this->index.PHP_EOL;
}
}
// Create an instance of Test
$t1 = ObjectManager::Instance('Test'); // Prints "Constructed Test 1"
$t1->Hello(); // Prints "Hello, World!" and "This is object 1"
// Get the instance called Test
$t2 = ObjectManager::Instance('Test'); // Prints noting
$t2->Hello(); // Prints "Hello, World!" and "This is object 1"
// Recreate the named instance called Test
$t3 = ObjectManager::Instance('Test', true); // Prints "Constructed Test 2"
$t3->Hello(); // Prints "Hello, World!" and "This is object 2"
?>
|