public function render() { $file = url::dir("template_controller") . $this->template . ".tpl"; if (file_exists($file)) { extract($this->data); ob_start(); require $file; $output = ob_get_contents(); ob_end_clean(); return $output; } else { exit("not load template {$file} "); } }
public function loadView($pname, $value = array()) { if (is_array($pname)) { $value = $pname['value']; $pname = $pname['view']; } $ex = explode("/", $pname); $name = "C" . $ex[0]; $dir = $pname; $fn = "index"; if (count($ex) == 1 or count($ex) == 2 and empty($ex[1])) { $dir = $dir[strlen($dir) - 1] == "/" ? $dir . "index" : $dir . "/index"; $name .= "index"; } else { if (count($ex) == 3) { $fn = end($ex); $dir = str_replace("/" . $fn, "", $dir); $name .= $ex[1]; } else { $name .= end($ex); } } $file = url::dir("controller") . $dir . '.php'; if (file_exists($file)) { require_once $file; } else { $this->error->add("Controller/loadView/file", $file, true); } self::$data[$dir] = new $name(); if (!empty($value)) { self::$data[$dir]->params = $value; } if (method_exists(self::$data[$dir], $fn)) { return self::$data[$dir]->{$fn}(); } else { return $this->error->add("Controller/loadView/method", $fn, true); } }
<?php define("CORE_LOAD", true); require_once $_SERVER['DOCUMENT_ROOT'] . "/icore/library/class.url.php"; require_once url::dir("library") . "class.controller.php"; require_once url::dir("library") . "class.System.php"; $app = new System();