# efast6 **Repository Path**: kaiyi/efast6 ## Basic Information - **Project Name**: efast6 - **Description**: No description available - **Primary Language**: PHP - **License**: Not specified - **Default Branch**: develop_e3 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-03-05 - **Last Updated**: 2020-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 2011/2/22日 新增 1.修改from_index 时处理流程。 2.$context->redirect函数添加延迟时间、延迟文本,$relay,$relay_msg参数。 3./lib/req/req_utils添加get_client_ip,set_http_status等,添加/lib/util类库目录。 4.$app添加page参数,用于指定母页模板,查找根目录在webapp/views/[theme]/,不能带.tpl.php文件后缀,当不设置时,默认为web_page,如果为'NULL'时,不加载母页模板。 5.增强系统安全性,当运行在安全模式(即RUN_SAFE=true)时,控制函数和控制类仅使用入口文件中,且为普通public方法;增强get_app_url,get_theme_url,get_url适应性。 6.webapp下添加boot目录,将app_init.php,app_conf.php移动webapp/boot目录下,添加app_reg.php文件,如果添加将优先使用此文件而部署公用的req_req.php,更利于app个性化。 2011/2/21日 新 增 1.views 增加模板,默认为default。 2.web 目录下增加index.php,可通过index.php转发到app目录下的控制类。 3.$context增加forward,redirect函数。 4.增加公用函数:require_lib,require_model,get_url,get_app_url,get_theme_url和get_session,set_session,set_cookie。 5.app.conf.php文件增加$php_ext,用于设置php文件在url中对应的值。 6. 添加webapp\app_init.php应用初始化文件,$context将在知己初始化之后,开始调用其它函数之前,include_once此文件并调用app_init函数 7.添加lib\req\req_util公用函数文件,包括clean_session,get_app_url_path,,get_app_url_query。 8.添加快捷函数ctx(),返回$GLOBALS['context']。 9.添加多语言支持,$context添加app_lang和数字lang,添加公用函数require_lang($pkgs,$first_app=true),lang($key)。 2011 1、目录说明 bin目录 bin\bm.bat 测试系统性能 bin\fastapp.bat 命令行运行webapp/web/app/目录下的php文件 boot目录 系统框架入口 inc目录 系统interface目录 plugins 外部接口目录 logs 默认日志文件目录 ext php扩展模块目录 webpub 浏览器端公用js,img文件目录,如jquery等。 lib目录 库文件目录 ctl 系统控件目录 db 数据库访问文件目录 filter 系统request、reponse filter,renderer目录 tool 注册到系统的公用文件目录 webapp目录 应用文件目录,可能有多个,名字也各不相同。 app_conf.php 应用配置文件,通过全局变量context的get_app_conf得到应用的配置 bin 应用php脚本文件目录 lang 应用语言文件目录 lib 应用的库目录 ctl应用的控件的目录 app_init.php 应用初始化文件,$context将在知己初始化之后,开始调用其它函数之前,include_once此文件并调用app_init函数 models 模型文件目录 cache 文件类型缓存目录 conf 文件类型配置目录 uploads 上传文件目录 views 模板文件目录,php应用默认模板为"[类名]_[方法名].tpl.php" web_page.tpl.php 默认页模板 web_page_error.tpl.php 错误模板 web 应用主目录,生产环境下将此目录配置为外部可访问 js、theme js、css、image等文件目录 app 应用php文件目录,php文件可使用类(类名默认和文件名相同)或者函数形式。 ctl 控件处理转发 2、$context $context RequestContext 应用上下文对象。ctx()===$GLOBALS['context']===RequestContext::instance(); 重要变量说明: $app_name 应用名称,如webapp。 $app_script 当前类名。 $app_path 当前类文件相对应用名称的app(如 webapp\app)路径 $theme='default' theme,默认default。 $from_index 入口是否为index.php,从index.php转发。 $app_lang='zh_cn' webapp的语言类型 $request、$response、$app request、response、app数组。 $lang 语言数组,key=>[webapp语言对应 文本] 重要函数说明 get_property($prop) 得到注册到context的属性值的tool对象,也可直接采用->形式。 get_app_conf($name) 得到webapp\app_conf.php中的应用配置参数。 log_error($msg) 将error文本写到日志。 log_debug($msg) 将debug文本写到日志。 put_error($errno,$errmsg) 将出错信息返回到客户端。 forward($act,$grp) 将请求转发到$act,$grp对应的控制类action,如果$grp为空,则为当前控制类。 redirect($act,array $options,$grp,$relay=0,$relay_msg='') 将请求通过client转发到$act,$grp对应的控制类action,如果$grp为空,则为当前控制类, $options为转发参数,$relay重定向延迟时间(second),$relay_msg重定向延迟时显示文本。 get_session($name,$pub=false) 得到session中name对应的值使用,$pub为true,得到公共session值,否则为webapp的session值. set_session($name,$value,$pub=false) 设置session中name的值$value,$pub为true,设置公共session值,否则为webapp的session值. set_cookie($name,$value,$ttl=NULL,$pub=false) 设置cookie的name,value对,ttl为cookie存活时间(second),默认为NULL,使用系统设置的时间,存放路径为系统设置path和domain,如果$pub为true,path=/,domain不设置. 重要属性(property)说明 conf 类型IConfig,缓存conf_[配置表](默认conf_app)的数据,key由catlog.group.var.name共4部分组成,catlog数据表名,如app,group如果是文件缓存为缓存文件名,var为数组名称,name为数组项key, 如果三部分,如app.cookie.ttl,默认group=var,如app.cookie.cookie.ttl,即一个数组一个缓存文件,如果为二部分,如cookie.ttl,默认group=var,catlog为app,即数据表为conf_app, 参见conf_app表结构。 cache 类型ICache,缓存一般数据,key为缓存id,如果为文件缓存为缓存文件名,ttl为缓存有效时间段。 $app数组重要变量: 前缀app_ name $app_name path $app_path grp $app_script 当前类名 默认文件名 act 处理函数 默认 do_index ctl 控件类名,调用控件方法,主要控件调用其方法进行交互 fmt 响应格式 默认 html,现包括html,json,csv mode 应用类型 默认web cli,web,func -批处理,web应用,func方法 step 执行顺序 default seq, 1.seq:squence,2.call:goto call,3.resp:goto response filter,4.rend:goto renderer ,req:goto request filter ,return: end err_no ,err_msg 错误码和文本 efid 访问控制文本 title html页面标题 tpl html模板,默认 "[类名]_[方法名]",不能加.tpl.php文件后缀,查找根目录在[webapp]/views/[theme]/ page html母页模板,默认"web_page",查找根目录在[webapp]/views/[theme]/,不能加.tpl.php文件后缀,如果为'NULL'时,不加载母页模板。 ttl 页面超时时间,seconds,用于浏览器、代理缓存,默认不缓存。 前缀ctl_ ctl_class_[id] 控件标识字段 在根目录下新建一个跟app_conf.php平行的文件,举个小栗子:app_conf_lj.txt 注:结尾一定要为.txt 否则报文件找不到错误。 app_conf_lj.txt 的开头千万不要写 “****配置所需要的配置,每次更新配置都需要全部重新配置一次(特别注意),请自行留备份 3>运行脚本文件 举个小栗子: http://my.trunck.com/webopm/web/?app_act=decrypt/decrypt/do_index&filename=app_conf_lj **my.trunck.com/ 换成各位的路径 **把filename改为自己文件名。 页面提示:文件配置成功 则成功。 4>请自行留备份文件。