校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PHP實現的簡單路由和類自動加載功能

PHP實現的簡單路由和類自動加載功能

熱門標簽:400電話辦理福州市 長沙crm外呼系統業務 江蘇外呼電銷機器人報價 400電話申請方法收費 深圳外呼系統收費 專業電話機器人批發商 南寧高頻外呼回撥系統哪家好 離石地圖標注 電話機器人危險嗎

本文實例講述了PHP實現的簡單路由和類自動加載功能。分享給大家供大家參考,具體如下:

項目目錄如下

入口文件index.php

?php
define('WEBROOT', 'C:/Users/Administrator/Documents/NetBeansProjects/test');
require_once(WEBROOT.'/core/environment.php');
core__app::run(); //

類自動加載文件environment.php

?php
//根據類名來include文件
class loader {
  //找到對應文件就include
  static function load($name) {
    $file = self::filepath($name);
    if ($file) {
      return include $file;
    }
  }
  static function filepath($name, $ext = '.php') {
    if (!$ext) {
      $ext = '.php';
    }
    $file = str_replace('__', '/', $name) . $ext; //類名轉路徑
    $path .= WEBROOT . '/' . $file;
    if (file_exists($path)) {
      return $path; //找到就返回
    }
    return null;
  }
}
spl_autoload_register('loader::load');

我這里類的加載規則是 比如core__app::run() 對應 根目錄/core/app.php 的 run()方法,用到了spl_autoload_register()函數實現自動加載,當調用某個類名的時候,會自動執行spl_autoload_register('loader::load'),根據類名include對應的類文件。

app.php入口文件執行的方法開始跑框架流程

?php
class core__app {
  static function run() {
    $a = $_SERVER['REQUEST_URI'];
    $uri = rtrim(preg_replace('/\&;.*/', '', $_SERVER['REQUEST_URI']), '/');
    $params = explode('/', trim($uri, '/'));
    $count = count($params);
    if ($count > 1) {
      $controller = $params[0];
      $method = $params[1];
    } elseif ($count == 1) {
      $controller = 'index';
      $method = $params[0];
    } else {
    }
    $filename = WEBROOT . '/controller/' . $controller . '.php';
    $controller = 'controller__'.$controller;
    try {
      if (!file_exists($filename)) {
        throw new Exception('controller ' . $controller . ' is not exists!');
        return;
      }
      include($filename);
      if (!class_exists($controller)) {
        throw new Exception('class ' . $controller . ' is not exists');
        return;
      }
      $obj = new ReflectionClass($controller);
      if (!$obj->hasMethod($method)) {
        throw new Exception('method ' . $method . ' is not exists');
        return;
      }
    } catch (Exception $e) {
      echo $e; //展示錯誤結果
      return;
    }
    $newObj = new $controller();
    call_user_func_array(array($newObj, $method), $params);
  }
}

根據請求uri去找對應的controller, 用call_user_func_array()的方式調用controller里的方法

根目錄/controller/test.php

?php
class controller__test {
  public function write($controller, $method) {
    //config__test::load('test');
    model__test::write($controller, $method);
  }
}

這里其實調用不一定要調用model里的test方法,可以調model目錄下的任意文件,在此之前可以去都讀一些config文件等等操作。

根目錄/model/test.php

?php
class model__test {
  public function write($model, $method) {
    echo 'From controller:'.$model.' to model: ' . $model . ' ,method: ' . $method;
  }
}

例如hostname/test/write 這個請求就會從入口文件進來,經過core__app::run就會找到controller下對應的的controller__test類,執行write()方法

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP命名空間和自動加載類
  • PHP中類的自動加載的方法
  • PHP命名空間與自動加載類詳解
  • 解析php類的注冊與自動加載
  • php _autoload自動加載類與機制分析
  • php類的自動加載操作實例詳解
  • php類自動加載器實現方法
  • PHP面向對象程序設計之命名空間與自動加載類詳解
  • PHP類的自動加載機制實現方法分析
  • PHP MVC框架中類的自動加載機制實例分析
  • PHP命名空間(Namespace)的使用詳解
  • PHP類的自動加載與命名空間用法實例分析

標簽:興安盟 曲靖 太原 濱州 白酒營銷 株洲 南京 南昌

巨人網絡通訊聲明:本文標題《PHP實現的簡單路由和類自動加載功能》,本文關鍵詞  PHP,實現,的,簡單,路由,和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP實現的簡單路由和類自動加載功能》相關的同類信息!
  • 本頁收集關于PHP實現的簡單路由和類自動加載功能的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    一级做a爱片久久| 国产精品一区二区久久精品爱涩| 午夜久久久久久久久久一区二区| 国产一区二区在线视频| 欧美最新大片在线看| 国产欧美日韩三区| 日韩电影在线免费| 91高清在线观看| 国产精品白丝在线| 国产老女人精品毛片久久| 在线视频综合导航| 中文字幕一区二区不卡| 国产精品一区一区| 欧美精品一区二区三区很污很色的| 亚洲一区在线观看免费观看电影高清| 国产精品白丝av| 精品国产一区二区三区久久久蜜月 | 精品sm捆绑视频| 亚洲福利一区二区三区| 欧美在线一二三四区| 综合电影一区二区三区 | 日韩欧美的一区二区| 亚洲高清一区二区三区| 色偷偷久久人人79超碰人人澡 | 日本美女一区二区| 在线视频欧美精品| 中文字幕一区二区不卡 | 日韩欧美中文一区| 丝袜亚洲另类丝袜在线| 欧美撒尿777hd撒尿| 亚洲精品乱码久久久久久黑人| 99国产欧美另类久久久精品| 国产天堂亚洲国产碰碰| 成人免费va视频| 中文av一区特黄| 97久久超碰国产精品| 亚洲三级小视频| 91国模大尺度私拍在线视频| 亚洲一区视频在线| 欧美日韩亚洲综合一区| 日韩中文字幕区一区有砖一区 | 日本三级韩国三级欧美三级| 欧美日本视频在线| 男女视频一区二区| 久久亚洲一区二区三区四区| 国产精品18久久久久久vr| 国产精品全国免费观看高清| 97久久精品人人做人人爽| 亚洲精品第一国产综合野| 欧美色偷偷大香| 全国精品久久少妇| 亚洲精品中文字幕在线观看| 色哟哟一区二区三区| 亚洲va韩国va欧美va| 欧美岛国在线观看| 成人性生交大片免费 | 国产精品黄色在线观看| 在线观看91精品国产入口| 日本不卡视频在线观看| 国产亚洲综合性久久久影院| 色天天综合色天天久久| 免费看欧美女人艹b| 国产精品三级av| 911精品国产一区二区在线| 国产一区二区三区香蕉| 亚洲欧洲成人精品av97| 91精品福利在线一区二区三区 | 国产激情一区二区三区四区 | 亚洲色图都市小说| 欧美一级片在线看| 成人精品一区二区三区四区| 午夜精品久久久久久久蜜桃app | 99r精品视频| 麻豆成人av在线| 韩国精品免费视频| 亚洲精品菠萝久久久久久久| 精品久久久久久久久久久久久久久久久 | 欧美日韩免费高清一区色橹橹 | 欧美成人一区二区三区在线观看| 99这里只有久久精品视频| 日韩在线一二三区| 亚洲欧美中日韩| 欧美大片在线观看一区| 欧美影院精品一区| 成人午夜电影久久影院| 美国一区二区三区在线播放| 亚洲综合在线视频| 国产精品久久久久天堂| 精品久久一二三区| 欧美日韩免费视频| 色噜噜夜夜夜综合网| 国产a久久麻豆| 精品综合免费视频观看| 亚洲va欧美va国产va天堂影院| 亚洲欧洲三级电影| 日本一区二区视频在线观看| 日韩欧美一区二区不卡| 欧美日韩不卡一区| 91久久免费观看| av中文字幕一区| 成人午夜视频免费看| 国产麻豆精品95视频| 免费高清不卡av| 全国精品久久少妇| 亚洲第一成人在线| 一区二区三区av电影| 一区二区三区**美女毛片| 蜜臀av性久久久久av蜜臀妖精| 亚洲免费在线观看| 亚洲人成电影网站色mp4| 国产精品久久夜| 国产欧美日韩不卡| 久久久精品tv| 亚洲精品一区在线观看| 欧美电视剧免费全集观看| 欧美va亚洲va在线观看蝴蝶网| 日韩欧美国产不卡| 日韩美女主播在线视频一区二区三区| 91精品蜜臀在线一区尤物| 久久精品在这里| 久久久久久久久一| 久久久99精品免费观看不卡| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美第一区第二区| wwww国产精品欧美| 国产日韩欧美精品综合| 欧美国产视频在线| 亚洲免费视频成人| 亚洲狠狠丁香婷婷综合久久久| 亚洲国产精品尤物yw在线观看| 视频一区二区三区中文字幕| 蜜桃视频第一区免费观看| 国内一区二区在线| jlzzjlzz国产精品久久| 色综合久久久久久久久| 欧美高清视频www夜色资源网| 91精品国产色综合久久不卡电影| 26uuu色噜噜精品一区二区| 国产色产综合色产在线视频| 亚洲品质自拍视频网站| 偷拍与自拍一区| 国产精品66部| 欧洲一区二区三区免费视频| 91麻豆精品国产91| 久久久亚洲国产美女国产盗摄| 亚洲三级在线免费| 久久精品国产999大香线蕉| 成人国产精品免费观看| 欧美裸体bbwbbwbbw| 国产欧美一区二区精品性色 | 日韩三区在线观看| 国产清纯白嫩初高生在线观看91| 亚洲一区在线观看视频| 国产精品自拍一区| 欧美午夜影院一区| 国产日产欧美一区二区三区| 亚洲不卡av一区二区三区| 国产精品亚洲午夜一区二区三区| 日本大香伊一区二区三区| 国产无遮挡一区二区三区毛片日本| 曰韩精品一区二区| 风流少妇一区二区| 日韩免费福利电影在线观看| 亚洲激情综合网| 国产精品亚洲第一| 日韩一级免费一区| 亚洲综合色成人| 成人精品小蝌蚪| 久久久午夜电影| 麻豆久久久久久| 欧美男生操女生| 夜夜操天天操亚洲| 成人av免费网站| 国产欧美日韩另类一区| 蜜桃免费网站一区二区三区| 欧美在线999| 综合色中文字幕| 成人avav在线| 中文字幕免费不卡在线| 极品美女销魂一区二区三区 | 国产精品亚洲人在线观看| 日韩精品最新网址| 日韩成人一级片| 欧美日韩五月天| 亚洲成人一区二区| 欧美在线一区二区| 亚洲黄色性网站| 在线视频一区二区三| 伊人色综合久久天天人手人婷| 成人视屏免费看| 国产欧美一区二区精品性| 国产精品18久久久久久久久久久久 | 久久精品亚洲一区二区三区浴池 | 久久精品人人爽人人爽| 国产一区二区三区在线观看免费视频| 欧美一区日本一区韩国一区| 日韩专区欧美专区| 69久久99精品久久久久婷婷 | 日韩国产一二三区| 欧美精品丝袜中出|