class TemplateEngine { private $_skin; private $_language; private $_directory; private $_components; public function __construct($layoutDirectory = './lay',$skin = 'default',$language = 'english') { $this->_skin = $skin; $this->_language = $language; $this->_directory = $layoutDirectory; } public static function selectLanguage($language) { static $_language; } public function appendComponent($comp) { $this->_components[] = $comp; } private function displayComponents() { foreach($this->_components as $comp) { if(is_string($comp)) { echo $comp; } else { echo $comp->getOutput(); } } } final public function display() { include($this->_directory.$this->_skin.DIRECTORY_SEPARATOR.'main.php'); } }