So i keep getting a few errors that i do not understand how i am getting this errors.
the issue i am having is when i make an new instance to my constructor class and try to pass the values to the function i have set it only excepts one value.
Class Registry.
<?php
namespace Main;
use Main\constructor;
interface iRegistery
{
public static function Init();
public static function RegisterClass($classname , $lib=NULL);
public function Build($classname , $param=NULL , $param1=NULL, $param2=NULL, $param3=NULL , $param4=NULL , $param5=NULL , $param6=NULL , $param7=NULL);
}
class Registry implements iRegistery
{
private static $array=array();
private static $constr=array();
private static $tmpcon;
private static $instance;
private static $library;
public static $use;
private function __construct()
{
}
private function __clone()
{
}
final public static function Init()
{
if(!self::$instance instanceof self)
{
self::$instance = new self();
}
return self::$instance;
}
final public static function RegisterClass($classname , $lib=NULL)
{
static $path;
if($lib !== NULL)
{
$path = $lib.'/'.$classname.'.class.php';
}
elseif($lib == NULL or $lib == 'defualt')
{
$path = 'library/'.$classname.'.class.php';
}
self::$instance->ClassLoader($path);
self::$instance->array[$classname]=$path;
return self::$instance->array[$classname];
}
final public function Build($classname , $param=NULL , $param1=NULL, $param2=NULL, $param3=NULL , $param4=NULL , $param5=NULL , $param6=NULL , $param7=NULL)
{
if(isset(self::$instance->array[$classname]) && $param == NULL)
{
self::$instance->use = new $classname;
return self::$instance->use;
}
if($param == NULL && isset(self::$instance->array[$classname]))
{
self::$instance->tmpconstr = '()';
}
elseif($param !== NULL && isset(self::$instance->array[$classname]))
{
require_once('constructor.class.php');
self::$instance->tmpconstr['param']= $param;
self::$instance->tmpconstr['param1']=$param1;
self::$instance->tmpconstr['param2']=$param2;
self::$instance->tmpconstr['param3']=$param3;
self::$instance->tmpconstr['param4']=$param4;
self::$instance->tmpconstr['param5']=$param5;
self::$instance->tmpconstr['param6']=$param6;
self::$instance->tmpconstr['param7']=$param7;
self::$instance->tmpcon = new constructor;
self::$instance->tmpcon->build_constructor(self::$instance->tmpconstr['param'],
self::$instance->tmpconstr['param1'],
self::$instance->tmpconstr['param2'],
self::$instance->tmpconstr['param3'],
self::$instance->tmpconstr['param4'],
self::$instance->tmpconstr['param5'],
self::$instance->tmpconstr['param6'],
self::$instance->tmpconstr['param7']);
}
elseif(!isset(self::$instance->array[$classname]))
{
throw new SystemException('Fatal Error:'. $classname .' Not Set');
}
return self::$instance->use;
}
final private static function ClassLoader($paths=NULL)
{
if($paths !== NULL)
{
require_once(strtolower($paths));
}
}
}
namespace Main;
class SystemException extends \Exception
{
public function __construct($message, $code = 0, \Exception $previous = null) {
parent::__construct($message, $code, $previous);
}
public function __toString() {
return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
}
}
?>
constructor class
<?php
namespace Main;
final class constructor extends Registry
{
public static $tmp;
public static function build_constructor($pram , $pram1 , $pram2 , $pram3 , $pram4 , $pram5 , $pram6 , $pram7)
{
if($pram !== NULL)
{
self::$tmp = '('.$pram.')';
}
elseif($pram !== NULL && $pram1 !== NULL )
{
self::$tmp = '('.$pram.','.$pram1.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL && $pram3 !== NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.','.$pram3.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL && $pram3 !== NULL && $pram4 !== NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.','.$pram3.','.$pram4.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL && $pram3 !== NULL && $pram4 !== NULL && $pram5!==NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.','.$pram3.','.$pram4.','.$pram5.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL && $pram3 !== NULL && $pram4 !== NULL && $pram5!==NULL && $pram !== NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.','.$pram3.','.$pram4.','.$pram5.','.$pram6.')';
}
elseif($pram !==NULL && $pram1 !== NULL && $pram2 !== NULL && $pram3 !== NULL && $pram4 !== NULL && $pram5!==NULL && $pram !== NULL && $pram7 !== NULL)
{
self::$tmp = '('.$pram.','.$pram1.','.$pram2.','.$pram3.','.$pram4.','.$pram5.','.$pram6.','.$pram7.')';
}
print_r(self::$tmp); // this is the problem i have values that should be printed here. testcase...
}
}
?>