Login   Register  
PHP Classes
elePHPant
Icontem

File: example/examples_wild.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/examples_wild.php  >  Download  
File: example/examples_wild.php
Role: Example script
Content type: text/plain
Description: Example with many of the features of ObjectManager
Class: ObjectManager
Manage the creation of objects by class name
Author: By
Last change:
Date: 2 years ago
Size: 2,233 bytes
 

Contents

Class file image Download
<?php
// Include ObjectManager
include_once('../objectmanager.php');

/*
 * Simple test class to demonstrate usage of ObjectManager
 */
class Test {
  function 
__construct() {
    echo 
"Creating test".PHP_EOL;
  }
  
  function 
Hello() {
    echo 
"Hello, world!".PHP_EOL;
  }
}

// Create instance of ObjectManager
$om = new ObjectManager();

// Get instance of class Test by using normal call
$o $om->Instance('Test');
$o->Hello();

// Get a named instance of class Test by using normal call
// $o2 is not the same object as $o
$o2 $om->Instance('Test2''Test');
$o2->Hello();

// Reuse the object called Test2
$o3 $om->Instance('Test2'); // This doesn't generate any call to the constructor of Test
$o3->Hello();

// Reset the named instance called Test (which was the first instance created)
$om->Instance('Test'false);

// By getting the instance called Test once again the constructor is called
$o4 $om->Instance('Test');
$o4->Hello();

// Replace the named object Test2 with a new instance
$o5 $om->Instance('Test2''Test'true);
$o5->Hello();

// Recreate the named instance called Test by using then name as an object variable
$om->Test true;

// Reset the named instance called Test by using then name as an object variable
$om->Test false;

// Get the named instance called Test by using the name as an object variable
$o6 $om->Test;
$o6->Hello();

// Get the named instance called Test by using ObjectManager as an array
$o7 $om['Test'];
$o7->Hello();

// Recreate the named instance called Test by using ObjectManager as an array
$om['Test'] = true;

// Get the named instace called Test2 by using ObjectManager statically
$o8 ObjectManager::Instance('Test2');
$o8->Hello();

// Get the named instace called Test2 by using instance of ObjectManager statically
$o9 $om::Instance('Test2');
$o9->Hello();

// Reset the named instance called Test2 by using ObjectManager as an array and unset
unset($om['Test2']);
 
// Get the named instace called Test2 by using instance of ObjectManager statically
$o10 $om::Instance('Test2'); // returns null since a class named Test2 couldn't be found
echo serialize($o10).PHP_EOL;
?>