自己编写基于MVC的轻量级PHP框架
自己编写基于MVC的轻量级PHP框架
2008-4-3 23:33:56 已被阅读:
477 发表评论
做WEB开发已有一年,每次都写重复的东西, 因此,想自己写一下框架,以后开发方便.
本人之前学习asp.NET两年,JSP半年,可是后来因为工作的原故换成PHP.其实很不喜欢PHP的语法.还有PHP的函数名,每回都忘记..还是喜
欢C#和JAVA的语法,哈...不过PHP有PHP的优点,不像ASP.NET那样封装了大量的东西,PHP更简单,更自由吧.还有应该就是PHP的开
源组合.
写这编文章主要是因为那些东西要写给别人看,顺便发表了.高手看了别笑,菜鸟自己注意辨别,别被我的错误观点误导.
文章中的代码下载
一.文件结构
├ index.php
入口文件
├ class
类存放的文件夹
├ base.class.php
基类
├ error.class.php
错误处理类
├ parms.class.php
获取参数类
├ control.class.php
控制类
├ model.class.php
模型类
├ template smartTemplate
类存放文件夹
├ db adodb
类存放文件夹
├ includes
包含文件类
├ defines.inc.php
定义各路径文件
├ frameword.inc.php
框架处理文件
├ router.inc.php
路由文件,
跟据参数,
跳转不同路径
├ models
模式存放路径
├ views
模版文件保存路径
├ controls
存放控制类的文件夹
├ config.php
配置文件
├ admin
后台
├
├
二.简单类图
三.
入口文件,index.php
<?
php
define("EXEC",1); //初始化一个常量,保存别的文件必须先有这个入口文件的引用.
define('PATH_BASE',dirname(__FILE__)); //获取入口文件的路径
define('DS', DIRECTORY_SEPARATOR); //目录的分隔,’/’ 或’’
define( 'PATH_ROOT', PATH_BASE ); //
站点的跟目录,跟据你的入品文件存放来定义,如果放在子目录下,则要做相应修改.如下,
//把路径分组
{parts = explode( DS,
PATH_BASE );
//去除最后一个路径名
array_pop( parts
);
define( 'PATH_ROOT', implode( DS, parts
) );}
require_once(PATH_ROOT.DS.'includes'.DS.'defines.inc.php'); //各文件夹的路径
require_once(PATH_ROOT.DS.'includes'.DS.'framework.inc.php'
);
echo request->Get('a');//参数的获取GET方法
request->Post(&l
相关文档:
PHP读取MYSQL数据库或MSSQL数据库时,有时出现乱码,这是PHP.ini中配置和.php页面编码不一致引起的。
解决办法:
1、首先,将PHP.ini中设置为default_charset = "gb2312",然后重启Apache。
这时从数据库中提取的结果集可以正常显示中文了,但.php页面中的列名也有可能显示乱码了。这样解决,
2、然后,PH ......
tidy 是一个非常帮忙的网页代码分析和纠错的工具,能够支持多种页面编码,并且支持xhtml输出。如果我们偷懒,甚至可以将整个页面缓存,最后采用tidy处理,最后输出完美的xhtml代码。
linux下安装过程如下:
首先安装tidy ,下载tidy源代码:
cvs -d:pserver: anonymous@tidy.cvs.sourceforge.net 为防备电子邮件地址收集 ......
# 安装tidy
yum install tidy libtidy-devel
# 给php添加tidy模块
wget http://pecl.php.net/get/tidy-1.2.tgz
tar -xvzf tidy-1.2.tgz
cd tidy-1.2
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --libdir=/usr/lib64
make
make install
echo "extension="tidy.so"" ......
作者:Ekerete
翻译:Emeric Li (http://lee.kometo.com/index.php/archives/117
)
原文:http://www.avnetlabs.com/php/php ... r-vs-zend-framework
我们计划从头开始一个新项目,为此评估了一些PHP框架。我们的备选列表有CakePHP , CodeIgniter , Symfony和Zend 。 我们分别使用这4种框架编写了一个相同的小应用( ......
转自:http://www.cmsgp.org/article/3.html PHP Session使我们能够将用户的数据保存在服务器端。但是Session数据是临时的,并且通常当用户关闭浏览器时,保存Session id的Cookie就会被删除,相关的Session数据也将因此丢失。当然,我们可以通过修改session.cookie_lifetime这个参数来控制Cookie有效时间。
PHP Sessi ......