扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
<?php /** * index.php * * @author Joe Stump <joe@joestump.net> * @copyright Joe Stump <joe@joestump.net> * @license http://www.opensource.org/licenses/gpl-license.php * @package Framework */ require_once('config.php'); // {{{ __autoload($class) /** * __autoload * * Autoload is ran by PHP when it can't find a class it is trying to load. * By naming our classes intelligently we should be able to load most classes * dynamically. * * @author Joe Stump <joe@joestump.net> * @param string $class Class name we're trying to load * @return void * @package Framework */ function __autoload($class) { $file = str_replace('_','/',substr($class,2)).'.php'; require_once(FR_BASE_PATH.'/includes/'.$file); } // }}} if (isset($_GET['module'])) { $module = $_GET['module']; if (isset($_GET['event'])) { $event = $_GET['event']; } else { $event = '__default'; } if (isset($_GET['class'])) { $class = $_GET['class']; } else { $class = $module; } $classFile = FR_BASE_PATH.'/modules/'.$module.'/'.$class.'.php'; if (file_exists($classFile)) { require_once($classFile); if (class_exists($class)) { try { $instance = new $class(); if (!FR_Module::isValid($instance)) { die("Requested module is not a valid framework module!"); } $instance->moduleName = $module; if ($instance->authenticate()) { try { $result = $instance->$event(); if (!PEAR::isError($result)) { $presenter = FR_Presenter::factory($instance->presenter,$instance); if (!PEAR::isError($presenter)) { $presenter->display(); } else { die($presenter->getMessage()); } } } catch (Exception $error) { die($error->getMessage()); } } else { die("You do not have access to the requested page!"); } } catch (Exception $error) { die($error->getMessage()); } } else { die("An valid module for your request was not found"); } } else { die("Could not find: $classFile"); } } else { die("A valid module was not specified"); } ?> |
RewriteEngine On # Change the URI here to whatever you want your homepage to be RewriteRule ^/$ /index.php?module=welcome [L,QSA] # Changes /index.php?module=welcome to /welcome RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/([^/]*)$ /index.php?module=$1 [L,QSA] # Changes /index.php?module=users&class=login to /users/login RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/([^/]*)/([^/]*)$ /index.php?module=$1&class=$2 [L,QSA] # Changes /index.php?module=users&class=login&event=foo # to /users/login/foo.html RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/([^/]*)/([^/]*)/([^/]*).html$ \ /index.php?module=$1&class=$2&event=$3 [L,QSA] Extending the Controller |
婵犵數濮烽。浠嬪焵椤掆偓閸熷潡鍩€椤掆偓缂嶅﹪骞冨Ο璇茬窞闁归偊鍓涢悾娲⒑闂堟单鍫ュ疾濠婂嫭鍙忔繝濠傜墛閸嬨劍銇勯弽銊с€掗柟钘夊暣閺岀喖鎮滈埡鍌涚彋閻庤娲樺畝绋跨暦閸洖鐓涢柛灞剧矋濞堟悂姊绘担绛嬪殐闁搞劋鍗冲畷銏ゅ冀椤愩儱小闂佹寧绋戠€氼參宕伴崱妯镐簻闁靛牆鎳庢慨顒€鈹戦埥鍡椾簼婵犮垺锚铻炴俊銈呮噺閸嬪倹绻涢崱妯诲碍閻庢艾顦甸弻宥堫檨闁告挾鍠庨锝夘敆娓氬﹦鐭楁繛鎾村焹閸嬫捇鏌e☉娆愬磳闁哄本绋戦埞鎴﹀川椤曞懏鈻婄紓鍌欑劍椤ㄥ懘鎯岄崒鐐靛祦閹兼番鍔岄悞鍨亜閹烘垵顏╅悗姘槹閵囧嫰寮介妸褎鍣ョ紓浣筋嚙濡繈寮婚悢纰辨晣鐟滃秹鎮橀懠顒傜<閺夊牄鍔庣粻鐐烘煛鐏炶姤鍠橀柡浣瑰姍瀹曠喖顢橀悩铏钒闂備浇宕垫慨鎶芥⒔瀹ュ鍨傞柦妯猴級閿濆绀嬫い鏍ㄧ☉濞堟粓姊虹涵鍛【妞ゎ偅娲熼崺鈧い鎺嗗亾闁挎洩濡囧Σ鎰板籍閸繄顓洪梺缁樺姇瀵剙螖閸涱喚鍘搁梺鍓插亽閸嬪嫰鎮橀敃鍌涚厱閻庯綆鍋嗘晶顒傜磼閸屾稑绗ч柟鐟板閹煎湱鎲撮崟闈涙櫏闂傚倷绀侀幖顐も偓姘卞厴瀹曞綊鏌嗗鍛紱閻庡箍鍎遍ˇ浼村磿瀹ュ鐓曢柡鍥ュ妼婢ь垰霉閻樿秮顏堟箒闂佹寧绻傚Λ妤呭煝閺囥垺鐓冪憸婊堝礈濮樿泛钃熼柕濞у嫷鍋ㄩ梺缁樺姇椤曨參鍩㈤弴銏″€甸柨婵嗗€瑰▍鍥ㄣ亜韫囨稐鎲鹃柡灞炬礋瀹曢亶顢橀悢濂変紦
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者