10)將地址換成常量
阿新 • • 發佈:2017-08-20
int etc 動作 else cati span user dump test
目錄關系:
然後改動的地方展示:
index.php代碼展示:
1 <?php 2 /** 3 * Created by PhpStorm. 4 * User: Interact 5 * Date: 2017/8/19 6 * Time: 22:02 7 */ 8 //確定分發參數 9 //動作 10 define(‘CONTROLLER‘,isset($_GET[‘c‘])?$_GET[‘c‘]:‘zixunC‘); 11 define(‘ACTION‘,isset($_GET[‘a‘])?$_GET[‘a‘]:‘show‘); 12 define("PLATFORM",isset($_GET[‘p‘])?$_GET[‘p‘]:‘test‘); 13 //目錄地址常量 14 define(‘ROOT_PATH‘,getcwd().‘/‘); 15 define(‘APPLICATION_PATH‘,ROOT_PATH.‘application‘.‘/‘); 16 define(‘FRAMEWORK_PATH‘,ROOT_PATH.‘framework‘.‘/‘); 17 define(‘TEST_PATH‘,APPLICATION_PATH.‘test‘.‘/‘); 18 define(‘CONTROLLER_PATH‘,TEST_PATH.‘controller‘.‘/‘); 19 define(‘MODEL_PATH‘,TEST_PATH.‘model‘.‘/‘); 20 define(‘VIEW_PATH‘,TEST_PATH.‘view‘.‘/‘); 21 function userautoload($class_name){ 22 23 // var_dump($class_name); 24 //先處理確定的(框架中的核心類)25 // 類名與類文件映射數組 26 $framework_class_list = array( 27 // ‘類名‘ => ‘類文件地址‘ 28 ‘Controller‘ => FRAMEWORK_PATH.‘Controller.php‘, 29 ‘Model‘ => FRAMEWORK_PATH.‘Model.class.php‘, 30 ‘Factory‘ => FRAMEWORK_PATH.‘Factory.class.php‘, 31 ‘MySQLDB‘ => FRAMEWORK_PATH.‘MySQLDB.class.php‘, 32 ) ; 33 // echo "走沒走"; 34 //判斷是否為核心類 35 if (isset($framework_class_list[$class_name])) { 36 //是核心類 37 require $framework_class_list[$class_name]; 38 } 39 //判斷是否為可增加(控制器類,模型類) 40 //控制器類,截取後是個字符,匹配Controller 41 elseif (substr($class_name, -1) == ‘C‘) { 42 // 控制器類, 當前平臺下controller目錄 43 require APPLICATION_PATH . PLATFORM . ‘/controller/‘ . $class_name . ‘.controller.class.php‘; 44 } 45 //模型類,截取後5個字符,匹配Model 46 elseif (substr($class_name, -5) == ‘Model‘) { 47 // 模型類,當前平臺下model目錄 48 require APPLICATION_PATH . PLATFORM . ‘/model/‘ . $class_name . ‘.class.php‘; 49 } 50 51 } 52 spl_autoload_register(‘userautoload‘); 53 54 55 56 57 require APPLICATION_PATH.PLATFORM.‘/controller/‘.CONTROLLER.‘.controller.class.php‘; 58 $controlelr_name=CONTROLLER; 59 $controller=new $controlelr_name(); 60 $action_name=ACTION; 61 $controller->$action_name();
10)將地址換成常量