shopnc基础框架分析
2017-07-25 11:27
232 查看
1.路径需要.htaccess重写
可配合里面route.class.php类重写,把所有路径解析都指向根目录的index.php写法,此有效防止用户乱访问目录,可对每个应用的目录放入.htaccess。
2.根目录index.php入口
include('shop/index.php');
其他应用目录入口对应应用文件夹下的index.php,例如:shop/index.php,mobile/index.php
每个index.php入口分析
a.根global.php(全局变量及是否安装程序判断)
b.core/33hao.php此文件命名有些程序会不一样
(1)读取全局配置文件BASE_DATA_PATH.'/config/config.ini.php'
(2)路由检测new Route
(3统一ACTION
(4)安全检测过滤
(5)启用ZIP压缩
(6)require_once(BASE_CORE_PATH.'/framework/libraries/queue.php');
require_once(BASE_CORE_PATH.'/framework/function/core.php');
require_once(BASE_CORE_PATH.'/framework/core/base.php');
require_once(BASE_CORE_PATH.'/framework/function/goods.php');
(7)自动注册类spl_autoload_register(array('Base', 'autoload'));
主要自动加载这些目录下的类:
BASE_PATH.'/framework/libraries/'.
BASE_CORE_PATH.'/framework/cache/'
BASE_CORE_PATH.'/framework/db/'
BASE_CORE_PATH.'/framework/libraries/'
c.读取本应用目录下的配置BASE_PATH.'/config/config.ini.php'
d.读取本应用目录下的BASE_PATH.'/framework/function/function.php'
e.Base::run();开始进入MVC框架流程
self::cp();合法性验证 self::init();parse_conf读取所有数据库配置setting_config,start_session设置session保存目录 self::control();生成控制器类
调用output_data输出json,调用Tpl::output,Tpl::showpage模版
3.每个应用相关配置有
config配置文件目录
api其他api php文件目录,访问方式/api/payment/alipay/notify_url.php
control控制器目录
framework程序框架公共方法目录
language语言目录
model数据模型目录
templates模版目录
4.Admin目录分析
菜单程序目录admin/include/menu.php
权限设置文件admin/include/limit.php
5.其他应用所用的技术
全文检索:xunsearch全文检索
crontab:定时任务及队列操作目录
可配合里面route.class.php类重写,把所有路径解析都指向根目录的index.php写法,此有效防止用户乱访问目录,可对每个应用的目录放入.htaccess。
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f # mod_fcgid & php-cgi RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1] # php5apache2_2.dll #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule>
2.根目录index.php入口
include('shop/index.php');
其他应用目录入口对应应用文件夹下的index.php,例如:shop/index.php,mobile/index.php
每个index.php入口分析
a.根global.php(全局变量及是否安装程序判断)
b.core/33hao.php此文件命名有些程序会不一样
(1)读取全局配置文件BASE_DATA_PATH.'/config/config.ini.php'
(2)路由检测new Route
(3统一ACTION
(4)安全检测过滤
(5)启用ZIP压缩
(6)require_once(BASE_CORE_PATH.'/framework/libraries/queue.php');
require_once(BASE_CORE_PATH.'/framework/function/core.php');
require_once(BASE_CORE_PATH.'/framework/core/base.php');
require_once(BASE_CORE_PATH.'/framework/function/goods.php');
(7)自动注册类spl_autoload_register(array('Base', 'autoload'));
主要自动加载这些目录下的类:
BASE_PATH.'/framework/libraries/'.
BASE_CORE_PATH.'/framework/cache/'
BASE_CORE_PATH.'/framework/db/'
BASE_CORE_PATH.'/framework/libraries/'
c.读取本应用目录下的配置BASE_PATH.'/config/config.ini.php'
d.读取本应用目录下的BASE_PATH.'/framework/function/function.php'
e.Base::run();开始进入MVC框架流程
self::cp();合法性验证 self::init();parse_conf读取所有数据库配置setting_config,start_session设置session保存目录 self::control();生成控制器类
调用output_data输出json,调用Tpl::output,Tpl::showpage模版
3.每个应用相关配置有
config配置文件目录
api其他api php文件目录,访问方式/api/payment/alipay/notify_url.php
control控制器目录
framework程序框架公共方法目录
language语言目录
model数据模型目录
templates模版目录
4.Admin目录分析
菜单程序目录admin/include/menu.php
权限设置文件admin/include/limit.php
5.其他应用所用的技术
全文检索:xunsearch全文检索
crontab:定时任务及队列操作目录
相关文章推荐
- SpringMVC 基础教程 框架分析
- 同步器基础:AQS框架深入分析
- 【SSH三大框架】Hibernate基础第六篇:多对一关联关系的映射、分析及添加、查询
- JS运动基础框架实例分析
- 【分析总结框架记录】基于ZMQ的游戏网络层基础架构
- Java多线程(七)之同步器基础:AQS框架深入分析
- Java基础知识强化之集合框架笔记65:Map集合之集合多层嵌套的数据分析
- 大数据技术学习笔记之hive框架基础3-sqoop工具的使用及具体业务分析
- 【SSH三大框架】Hibernate基础第六篇:多对一关联关系的映射、分析及加入、查询
- Java多线程(七)之同步器基础:AQS框架深入分析
- 统计编程的框架与R语言统计分析基础——摘(1)
- storm基础框架分析
- 对于公司组建Hadoop基础框架的推荐分析
- OGRE On iPhone ----Ogre的iPhone基础模版框架源代码分析
- Java并发基础框架AbstractQueuedSynchronizer初探(ReentrantLock的实现分析)
- bootsect.S框架基础级分析
- SpringMVC 基础教程 框架分析
- SpringMVC 基础教程 框架分析
- soot代码分析框架的基础知识(一)
- OGRE On iPhone ----Ogre的iPhone基础模版框架源代码分析