Mon Oct 27, 2008 12:14 pm
<?php
class ClassFactory{
private $registeredClasses = array();
static private $instance = NULL;
private function __construct() {}
static function getInstance(){
if(self::$instance == NULL){
self::$instance = new ClassFactory();
}
return self::$instance;
}
function registerClass($id, $creator_func){
$this->registeredClasses[$id] = $creator_func;
}
function createObject($id, $args) {
if(!isset($this->registeredClasses[$id])){
return(NULL);
}
return($this->registeredClasses[$id]($args));
}
}
function MyClassCreator(){
return "creator";
}
$factory = ClassFactory::getInstance();
$factory->registerClass(1, "MyClassCreator");
$instance = $factory->createObject(1, array());
?>
Codemiles.com is a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for sites to earn advertising fees by advertising and linking to Amazon.com
Powered by phpBB © phpBB Group.