首頁  >  問答  >  主體

PHP自動載入報錯找不到原因,請大佬幫忙看看

QQ浏览器截图20200307005945.pngclass Framework{    //在建構方法中初始化    public function __construct()    {        $this->autoload();            public function autoload()    {        //說明:如果一個函數的參數是回呼函數,就直接寫函數的名字        //如果函數的參數是一個物件的方法的話,則需要傳遞陣列進去,參數1:物件;物件的方法        spl_autoload_register(array($this,"autoloader"));      spl_autoload_register(array($this,"autoloader"));            }    //自動載入執行的函式;';        / /針對第三者的類,做一個特例處理        if($className=='Smarty'){            require_once './framework/vendor/smarty/Smarty.class.php';  //1. 先將帶有命名空間的類,分隔開        $arr = explode('\\', $className);            //2. 根據第一個元素決定載入的根目錄        if($arr[0] == ' $basic_path = './';        }else{            $basic_path = './application/';        }   '/', $className );            //4. 確定檔名        //確定後綴:類別檔案的後綴:.class.php,介面檔案的後綴是:.interface.php     if(substr($arr[count($arr)-1], 0,2)=='I_'){            //說明是介面檔  ​​          $fix = '.interface.php'           $fix = '.interface.php' .class.php';        }$class_file = $basic_path.$sub_path.$fix;            //5. 載入類別        //如果不是依照我們的命名空間的規則定義的,說明不是我們需要載入的類別,就不用載入 {            require_once $class_file;        }    }       //確定mca    public function in $m = isset($_GET['m'])?$_GET['m']:'home';        define('MODULE', $m);                // 存取哪個控制器 90,000 $ 'c'])?$_GET['c']:'Index';        define('CONTROLLER', $c);                //存取控制器的哪一個動作使用 $ $_GET['a']:'indexAction';        define('ACTION', $a);    }        //實例化對象,呼叫方式    public function dispatch()    //實例化對象,呼叫方式    public function dispatch()    //實例化對象,請使用方式    public function dispatch()    //實例化。 .'Controller';                //先載入控制器類,再實例化物件        $controller = new $controller_name;      controller -> $a();    }}

有病呻吟有病呻吟1709 天前920

全部回覆(1)我來回復

  • justin

    justin2020-03-11 08:40:12

    你把smarty重新下載看看,先看看你專案中的smart中是否有sysplugins資料夾和plugins資料夾沒有就考進去。

    回覆
    0
  • 取消回覆