[php:1:1875352083]
<?php
class Controller
{
static $arrInstances;
/**
* Konstruktor
*/
function Controller()
{
$this->arrInstances = array();
}
/**
* @access public
* @return false jeśli nie można załadować modułu
* @param str $strModuleName Nazwa modułu do załadowania
* @param str $strModuleFile Nazwa pliku do załadowania
* @desc Ładuje wybrany moduł
*/
function Load( $strModuleName, $strModuleFile = '', $arrArguments = '', $blnNotClass = false )
{
if ( isset( $strModuleFile ) )
{
require_once( self::Config( 'CLASSES_ROOT' ) . '/' . $strModuleFile );
}
if ( $blnNotClass == false && !is_array( $arrArguments ) )
{
self::$arrInstances[$strModuleName] = new $strModuleName;
return self::$arrInstances[$strModuleName];
}
elseif ( is_array( $arrArguments ) )
{
// tutaj winien być kod, tylko nie wiem jaki

}
}
}
?>
[/php:1:1875352083]
Pozostałe funkcje wycięłem.
Ale teraz przejdźmy do właściwego pytania - czy ma ktoś pomysł jak przekazywać parametry do nowo tworzonej klasy (tworzonej przez funkcję Load) poprzez samą funkcję? Może trochę jaśniej.
Wywołuję funkcję load:
[php:1:1875352083]
<?php
Controller::Load( 'Test', 'test.class.php', array( 'argument1', 'argument2' ) );
?>
[/php:1:1875352083]
I teraz klasa Load powinna załadować clasę w ten sposób:
[php:1:1875352083]
<?php
self::$arrInstances['Test'] = new Test('argument1','argument2');
?>
[/php:1:1875352083]
Lecz nie wiem jak to rozwiązać....