打算写一款框架来提高自己 写个结构吧

<?php

/* ********************************************************************************

* ShenPHP 入口文件  index.php $

* ********************************************************************************

* 许可声明:本框架出于个人喜好所写,不用于商业用途,$

* ********************************************************************************

* 官方微博:3225263431 QQ:619043894 $

* ********************************************************************************

* $Author: Shenxn 申小宁 ([email protected]) $

* $Date: Oct 18, 2013 4:58:48 PM $

* $Id$

* *******************************************************************************/

header("Content-Type:text/html;charset=utf-8");  //设置系统的输出字符为utf-8

date_default_timezone_set("PRC");                //设置时区

/**

* 框架目录

*/

define("ROOT_PATH", str_replace("\\", "/", dirname(__FILE__)).‘/‘);

/**

* 程序根目录

*/

define(‘SCRIPT_PATH‘, dirname(ROOT_PATH).‘/‘);

/**

* 模块根目录

*/

define(‘MODULE_PATH‘, SCRIPT_PATH.‘module‘);

//加载框架

require_once ROOT_PATH.‘/lib/init.php‘;

/**

* 自动生成目录结构

*/

Structure::create();

/**

* 包含系统配置文件

*/

$config = SCRIPT_PATH."config/config.php";

if(file_exists($config)){

require_once $config;

}

/**

* 加载系统内置函数

*/

$common_function = ROOT_PATH.‘/common/function.php‘;

if(file_exists($common_function)){

require_once $common_function;

}

/**

* 加载公共函数

*/

$common_helper = SCRIPT_PATH.‘/helper/setup.php‘;

if(file_exists($common_helper)){

require_once $common_helper;

}

/**

* 加载smarty

*/

$smarty = ROOT_PATH."plugin/smarty/Smarty.class.php";

if(file_exists($smarty)){

require_once $smarty;

}

require_once ROOT_PATH.‘/Controller.php‘;

Controller::dispatch();

时间: 2024-10-15 22:06:13

打算写一款框架来提高自己 写个结构吧的相关文章

参考KOA,5步手写一款粗糙的web框架

我经常在网上看到类似于KOA VS express的文章,大家都在讨论哪一个好,哪一个更好.作为小白,我真心看不出他两who更胜一筹.我只知道,我只会跟着官方文档的start做一个DEMO,然后我就会宣称我会用KOA或者express框架了.但是几个礼拜后,我就全忘了.web框架就相当于一个工具,要使用起来,那是分分钟的事.毕竟人家写这个框架就是为了方便大家上手使用.但是这种生硬的照搬模式,不适合我这种理解能力极差的使用者.因此我决定扒一扒源码,通过官方API,自己写一个web框架,其实就相当于

自己动手写PHP MVC框架

来自:yuansir-web.com / [email protected] 代码下载: https://github.com/yuansir/tiny-php-framework PHP的框架众多,对于哪个框架最好,哪个框架最烂,是否应该用框架,对于这些争论在论坛里面都有人争论,这里不做评价, 个人觉得根据自己需求,选中最佳最适合自己MVC框架,并在开发中能够体现出敏捷开发的效果就OK了,作为一个PHPer要提高自己的对PHP和MVC的框架的认识,所以自己写一个MVC框架是很有必要的, 即使不

腾讯高级工程师:如何从头开始写游戏服务器框架_转

转自: 腾讯高级工程师:如何从头开始写游戏服务器框架 本文作者:韩伟,腾讯互娱高级工程师,目前在 Next 产品中心研发创新类型游戏. 前言:从去年开始作者投入了一些具体游戏项目的开发,这些新的游戏项目,比较接近独立游戏的开发方式.在这个过程中,作者从头写了一个游戏服务器端的框架,以便获得更好的开发效率和灵活性.因此这篇文章便是该项目服务器框架的设计和实现过程的总结. PS:框架的基本运行环境是 Linux ,采用 C++ 编写.为了能在各种环境上运行和使用,采用了 gcc4.8 这个“古老”的

写个PHP框架吧

肯定会问:现在的PHP框架那么多了,为什么还要写一个PHP框架呢? 1.时代:PHP7来了,现在的所有框架都是基于PHP5.x的.到时候PHP7正式推广出来,现有的框架都不能发挥PHP7的最大性能优势,比如强类型和JIT.到时候很多框架就会有一个版本分裂的问题出现了,很多框架需要同时维护两套代码,部分框架可能会力不从心而挂掉了.所以现在要写一个PHP框架就要以PHP7为最低版本要求,虽然现在PHP7还是测试版本,框架开发难度有点大. 2.时长:一个框架开发要多少呢?个人观点:从开发到测试.到实验

自己写的Dao框架

在使用数据库连接池的时候,每次写Dao都很烦,要写很多重复的Sql语句,还有各种针对查询好的Rs后fetch出Bean,真的让我很不能忍. 于是在经过了一下午的研究,终于针对Dao进行的封装. 废话不多说 先看Dao父类: import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.lang.reflect.Method; import

自己手写WEB程序框架并运行

1.新建文件夹,起名MyWeb 2.文件夹下,新建两个文件夹 WEB-INF, META-INF,,还可以新建一些jsp,html文件 ,如 index.html 3在WEB-INF中必须存在一个文件WEB.xml, 还包含两个文件夹 lib, classes 4 在WEB.xml中写入最简单的<web-app> ....  </web-app>,,,,,编辑一下index.html 下面是要运行了 1,cmd 2,切换到MyWeb的文件夹,jar 命令查看一下各个参数的含义 3,

自己动手写Android数据库框架

前言 相信不少开发人员跟我一样,每次都非常烦恼自己写数据库,并且那些数据库语句也经常记不住.当然网上也有非常多非常好的数据库框架,你能够直接拿来用,可是 非常多时候我们的项目.特别是一个小型的Andrond应用原本用到的数据库结构比較简单,不是必需去用那些有点臃肿的框架.当然,即使你用那些框架.当你遇到问题时,你是否也得去改动它?你要改动别人的框架必须的读懂他人的设计代码.所以无论从那个角度出发,你都得掌握简单的数据库操作.那么这篇博客就从简单的数据库操作来学习Android数据库相关知识点.然

教你写Android ImageLoader框架之初始配置与请求调度

## 前言 在教你写Android ImageLoader框架之基本架构中我们对SimpleImageLoader框架进行了基本的介绍,今天我们就从源码的角度来剖析ImageLoader的设计与实现.   在我们使用ImageLoader前都会通过一个配置类来设置一些基本的东西,比如加载中的图片.加载失败的图片.缓存策略等等,SimpleImageLoader的设计也是如此.配置类这个比较简单,我们直接看源码吧. ImageLoaderConfig配置 /** * ImageLoader配置类,

自己写的struts1框架

前言 正文 自定义Struts1 commons-digester.jar解析XML 实现XML标签到对象的转换 1.根据目标XML的结构定义解析规则文件 参照rule.xml 2.创建集合对象接收封装解析的XML ModelConfig config = new ModelConfig(); Digester digester = DigesterLoader. createDigester(ActionServlet.class.getClassLoader().getResource("c