现在还在一直开发中,还没有竣工所以每天只能发一点,等好了后我会给大家详细的教程和使用方法
<?php /** * WDPHP 入口文件 * @package WDPHP * @author 肖伟 * @version v1.0 * @copyright Copyright (c) 2012. widuu.com */ header("Content-type:text/html;charset=utf-8"); //设置编码为utf-8 date_default_timezone_set('PRC'); //设置时区为中国 session_start(); //开启session define("IN_WDPHP",true); //设置安全机制 define("WDPHP_VERSION","v1.0"); //版本申明 define("WDPHP_PATH",rtrim(WDPHP,"/")."/"); //项目框架路径 define("APP_PATH",rtrim(APP_PATH,"/")."/"); //用户的应用路径 define("APP_NAME",trim(APP_PATH,"./")); //设置项目名称 define("__ROOT__",dirname("WDPHP_PATH")."/"); //项目的根目录 define("TMP_PATH", str_replace(array(".", "/"), "_", ltrim($_SERVER["SCRIPT_NAME"], '/'))."/"); //设置smarty信息 if(!defined("TMP_L"))define("TMP_L","<{"); //设置smarty的左边的标记 if(!defined("TMP_R"))define("TMP_R","}>"); //设置smarty的右边的标记 if(!defined("CSTART"))define("CSTART",false); //设置是否开始缓存,开启为true,不开启为false if(!defined("CTIME"))define("CTIME",""); //设置缓存时间,必须开启缓存时才能设置 //包含系统配置的文件 $config=__ROOT__."config.inc.php"; if(file_exists($config)){ include $config; } //包含框架的核心函数库文件 include WDPHP_PATH."common/functions.php"; //包含全局的函数库文件,用户自定义的函数库 $functions=__ROOT__."common/functions.php"; if(file_exists($functions)){ include $functions; } //设置包含目录(类所在的全部目录), PATH_SEPARATOR 分隔符号 Linux(:) Windows(;) $path=get_include_path(); //原始基目录 $path.=PATH_SEPARATOR.WDPHP_PATH."core/"; //项目所在的核心类文件 $path.=PATH_SEPARATOR.WDPHP_PATH."lib/"; //框架的扩展类目录 $path.=PATH_SEPARATOR.WDPHP_PATH."view/"; //smarty模板类所在的文件 $path.=PATH_SEPARATOR.__ROOT__."class/"; //项目用到的工具类 $controlerpath=__ROOT__."lib/action/".TMP_PATH; //生成控制器所在的路径 $path.=PATH_SERARATOR.$controlerpath; //当前应用控制类所在的目录 //设置include 包含所有文件夹的目录 set_include_path($path); //设置Debug模式 if(defined("DEBUG") && DEBUG==1){ $GLOBALS["debug"]=1; //初例化开启debug error_reporting(E_ALL ^ E_NOTICE); //输出除了注意的所有错误报告 include WDPHP_PATH."core/debug.class.php"; //包含debug类 Debug::start(); //开启脚本计算时间 set_error_handler(array("Debug", 'Catcher')); //设置捕获系统异常 }else{ ini_set('display_errors', 'Off'); //屏蔽错误输出 ini_set('log_errors', 'On'); //开启错误日志,将错误报告写入到日志中 ini_set('error_log', __ROOT__.'runtime/error_log'); //指定错误日志文件 } //自动加载类 function __autoload($className){ switch($className){ case "memcache": return; break; case "Smarty" : include "Smarty.class.php"; break; default : include ucfirst($className).".class.php"; break; } } //判断页面是否开启静态缓存 if(CSTART==0){ Debug::addmsg("<font color='red'>没有开启页面缓存!</font>"); }else{ Debug::addmsg("开启页面缓存,实现页面静态化!"); } Filecreate::create(); Debug::addmsg("会话ID:".session_id()); //模板文件中所有要的路径,html\css\javascript\image\link等中用到的路径,从WEB服务器的文档根开始 $spath=dirname($_SERVER["SCRIPT_NAME"]); if($spath="/"||$spath="\\") $spath=""; $GLOBALS["root"]=$spath."/"; //web服务器项目的根 $GLOBALS["app"]=$_SERVER["SCRIPT_NAME"].'/'; //当前应用的脚本文件 $GLOBALS["url"]=$GLOBALS["app"].$_GET["m"]; //访问当前的应用模块 $GLOBALS["public"]=$GLOBALS["root"]."public/"; //项目全局公共资源目录 $GLOBALS["data"]=$GLOBALS["root"].ltrim(APP_PATH,"./")."templets/".TPL_STYLE."data"; //模板应用资源地址 //控制器类所在的路径 $srccontrolerfile=APP_PATH."action/".ucfirst($_GET["m"])."class.php"; Debug::addmsg("当前访问的控制器类在项目应用目录下的: <b>$srccontrolerfile</b> 文件!"); //控制器类的创建 if(file_exists($srccontrolerfile)){ Filecreate::commoncontroler(APP_PATH."action/",$controlerpath); Filecreate::action($srccontrolerfile, $controlerpath, $_GET["m"]); $className=ucfirst($_GET["m"])."Action"; $controler=new $className(); $controler->run(); }else{ Debug::addmsg("<font color='red'>对不起!你访问的模块不存在,应该在".APP_PATH."controls目录下创建文件名为".strtolower($_GET["m"]).".class.php的文件,声明一个类名为".ucfirst($_GET["m"])."的类!</font>"); } if(defined("DEBUG") && DEBUG==1 && $GLOBALS["debug"]==1){ Debug::stop(); Debug::message(); }
发表评论 取消回复