zoukankan      html  css  js  c++  java
  • ectouch第三讲之加载调用机制

    加载与调用机制:
            当地址栏键入/mobile,就会加载入口文件index.php;从入口文件里面会调用EcTouch.php公共入口文件,当进入公共入口文件,会定义一些变量,然后加载公共函数文件Common.php,再加载默认配置和数据库配置时区的设置等基本功能,然后会调用在Common.php里面的urlRoute()函数,这个函数是在Common.php里面。在调用urlRoute()函数进行网址路由解析解析时,会调用mobileincludevendorDispatcher.class.php这个文件里面的dispatch()方法进行URL调度,这个方法获得当前实际的模块名,控制器和方法名。对获得的这些模块名,控制器和方法会在Common.php进行URL的组装,并最终解析呈现出页面。 然后实现各个页面的传递与跳转。最后抛出异常处理。
         default模块和admin模块下有着自己的控制器和model,还有数据库配置文件。
     
    加载与调用主要函数及定义如下(缩进为层次关系,缩进指在当前文件下):
    调用文件 文件存放位置
    1、入口文件   mobileindex.php
    2、调用核心文件     mobileincludeEcTouch.php
                            define  BASE_PATH mobileinclude

                      ROOT_PATH mobile
                        APP_PATH mobileincludeapps
                      ADDONS_PATH mobileplugins
                        DEFAULT_APP                 default
                        DEFAULT_CONTROLLER     Index
                      DEFAULT_ACTION         index

                       加载系统函数       mobileincludeCommon.php
                                            路由解析 urlRoute()

                            生成URL链接 url( U())
                            URL组装 U()
                            URL重定向 redirect()
                            自动加载         mobileincludeasemodel类名.class.php
                            mobileincludeasecontroller类名.class.php
                            mobileincludeapps模块名model类名.class.php
                            mobileincludeapps模块名controller类名.class.php
                            加载配置文件 load_config()
                            C()获取和设置配置参数、E()异常、L()获取和设置语言定义、I()获取输入参数、
                            session()session管理函数
                            cookie()Cookie 设置、获取、删除
                            site_info()站点数据
                            logResult()写入日志文件

                        默认配置    mobileincludeConvention.php (包含应用配置、数据库配置、模板配置、session参数设置、Cookie参数设置)
                数据库配置      mobiledataconfig.php
                        define      __HOST__      http://localhost
                                        __ROOT__        mobile
                                        __URL__             http://localhost/mobile
                                        __PUBLIC__      mobiledatacommon
                                        __ASSETS__  mobiledataassetsdefault
     
     
     
    mobileincludevendorDispatcher.class.php文件主要方法名和变量定义:
    获得实际的控制器名称getController
    获得实际的操作名称getAction
    获得实际的模块名称getModule
    获取模块名称
    define('APP_NAME')|C('_APP_NAME')  default
    当前应用地址
     define('__APP__', /mobile/index.php
    定义控制器和操作名
    define('CONTROLLER_NAME') Index
    define('ACTION_NAME') index
    URL地址
    define('__MODULE__'      /mobile/index.php/default 
    define('__CONTROLLER__ /mobile/index.php/default/index
    define('__ACTION__ /mobile/index.php/default/index/index
    define('PHP_FILE', /mobile/index.php
    define('__SELF__' /mobile/index.php?m=default&c=index&a=index
    待续。。。
  • 相关阅读:
    java-logic====吃货联盟
    jsp---》》》新闻发布系统的项目跟踪+++++++文件上传
    jsp---tomcat===》》内置对象
    JS中两个节点的关系
    HTML第二本书学习后记
    JavaScript:编程改变文本样式
    JavaS:网页中的显示和隐藏
    第一次做网页设计遇到的问题总结
    HTML中添加背景音乐
    表格的结构标记
  • 原文地址:https://www.cnblogs.com/c-961900940/p/4729461.html
Copyright © 2011-2022 走看看