<?phpnamespace Frameworkcore;
class Framework{ //In der Konstruktormethode initialisiert public function __construct() { $this->autoload(); $this->dispatch(); //Registrieren für automatisches Laden public function autoload() { ? ? ? ? ? //Hinweis: Wenn der Parameter einer Funktion eine Callback-Funktion ist, schreiben Sie einfach den Namen der Funktion direkt ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Objektmethode spl_autoload_register(array($this,"autoloader")); //Auto- Lade- und Ausführungsfunktion public function autoloader($className) { echo 'Wir brauchen:'.$className.'<br>' / /Machen Sie einen Sonderfall für Klassen von Drittanbietern if($className=='Smarty') { require_once './framework/vendor/smarty/Smarty.class.php'; return; Klassen im Namensraum, getrennt $arr = destroy('\', $className); auf dem ersten Element if($arr[0] == 'framework'){ $ basic_path = './' }else{ ? ? ? ? ? ? ? $basic_path = './application/'; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? using ? ? ? ? ? ? use using 's } ? ? through ? using ? ? ? ? through ? through ‐ ? ‐ bis ‐ ‐ } ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //4. Bestimmen Sie den Dateinamen // Bestimmen Sie das Suffix: das Suffix der Klassendatei: .class.php, das Suffix der Schnittstellendatei: .interface.php //frameworkdaoI_DAO, bestimmen Sie, ob Das letzte Element beginnt mit I_ if(substr($arr [count($arr)-1], 0,2)=='I_'){ ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? $fix = '.$class_file = $basic_path.$sub_path.$fix; //5. Laden der Klasse //Wenn sie nicht gem?? den Regeln unseres Namespace definiert ist, bedeutet das, dass es keine Klasse ist, die wir laden müssen, also gibt es keine muss geladen werden if(file_exists($class_file)) { ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? require_once $class_file; $m = isset($_GET['m'])?$_GET['m']:'home'; define('MODULE', $m); //Auf welchen Controller soll zugegriffen werden? 'c'])?$_GET['c']:'Index'; define('CONTROLLER', $c'); //Auf welche Operation des Controllers wird zugegriffen? )? $_GET['a']:'indexAction'; define('ACTION', $a); //Instanziieren Sie das Objekt und rufen Sie die Methode auf. CONTROLLER.' Controller '; // Laden Sie zuerst die Controller-Klasse und instanziieren Sie dann das Objekt $ a = $ a ();
你把smarty重新下載看看,先看看你項(xiàng)目中的smart中是否有sysplugins文件夾和plugins文件夾沒(méi)有就考進(jìn)去。