Login   Register  
PHP Classes
elePHPant
Icontem

File: example/example_manual_2.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Thomas Björk  >  ObjectManager  >  example/example_manual_2.php  >  Download  
File: example/example_manual_2.php
Role: Example script
Content type: text/plain
Description: Example 2
Class: ObjectManager
Manage the creation of objects by class name
Author: By
Last change:
Date: 2011-11-16 06:09
Size: 956 bytes
 

Contents

Class file image Download
<?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 the ObjectManager
$objMgr = new ObjectManager();

// Create an instance of Test
$t1 $objMgr->Instance('Test'); // Prints "Constructed Test 1"
$t1->Hello(); // Prints "Hello, World!" and "This is object 1"

// Get the instance called Test
$t2 $objMgr->Instance('Test'); // Prints noting
$t2->Hello(); // Prints "Hello, World!" and "This is object 1"

// Recreate the named instance called Test
$t3 $objMgr->Instance('Test'true); // Prints "Constructed Test 2"
$t3->Hello(); // Prints "Hello, World!" and "This is object 2"

?>