安装

1、环境要求

基本要求:web服务器运行的PHP版为5.1.0或更高,支持SPL(PHP标准库)。

2、下载DoitPHP

访问 http://www.doitphp.net/index/download 下载DoitPHP的最新版本,将其解压;或者访问 https://github.com/doitphp/doitphp_standard 直接下载。

3、安装调试

所下载的DoitPHP代码为一个完整的项目,将代码至web可以访问到的目录里面即可完成安装。
运行项目入口文件:index.php。当运行页面看到“hello world”时,则表明安装成功。

4、目录权限

DoitPHP安装后,需要对项目目录权限进行设置。web服务器(如:Nginx或Apache)需要拥有对于缓存目录(cache)及有其子目录,以及日志目录(logs)的写权限。

5、Nginx配置文件

若web服务器软件为:Apache,则可以直接访问入口文件:index.php;若web服务器软件为:Nginx,则需要配置Nginx配置文件才能正常访问。Nginx配置文件实例如下,仅供参考。

server {
	listen 80;
	server_name yourdomain;
	index  index.html index.php;
	root   /www/htdocs/yourdomain;

	try_files $uri $uri/ /index.php?$uri&$args;

	if (!-f $request_filename) {
			rewrite "^/(.*)$" /index.php/$1 last;
	}	

	location ~ \.php$ {
		fastcgi_pass  127.0.0.1:9000;
		fastcgi_index  index.php;
		include  fastcgi.conf;
	}

	error_page  403  http://www.google.com/404;
	error_page  404  http://www.google.com/404;
}

5、DoitPHP项目目录说明

- index.php				入口文件
- application			应用目录
	|- config					配置文件目录
	|- controllers		控制器目录	
	|- models					模型目录
	|- views					视图目录
		|- layouts				布局视图目录
		|- widgets				挂件视图目录
		|- errors					自定义系统提示视图目录
	|- library				类文件目录
	|- widgets				挂件目录
	|- extensions			扩展目录
	|- language				语言包目录
- assets					仓库目录
	|- css						CSS文件目录
	|- images					图片文件目录
	|- js							Javascript文件目录
- doitphp					DoitPHP框架
	|- core						DoitPHP核心类文件目录	
	|- library				DoitPHP扩展类文件目录
	|- views					DoitPHP视图文件目录
- cache						缓存目录
	|- data						文件型数据缓存目录
	|- models					模型文件缓存
	|- htmls					页面缓存
	|- views					视图文件缓存
	|- temp						临时文件
- logs						日志目录
- robots.txt

如上所示,相信大家对DoitPHP项目子目录的结构布局一目了然。接下来要重点介绍的是“应用目录(application)”:因为项目开发文件(静态文件除外)都存放于此。内容如下:

1、设置目录(config):用于存放项目设置文件。如项目主配置文件:application.php。

2、controller目录(controllers):存放controller文件,支持子目录。

3、model目录(models):model文件存放处,支持子目录。

4、视图目录(views):用于存放视图文件,支持子目录。默认有三个子目录:layouts、widgets、errors,此三子目录为专用视图目录,各有各的特殊用途。子目录layouts用于存放布局视图文件,子目录widgets用于存放挂件(widgets)视图文件,子目录errors用于存放系统错误提示页自定义视图文件,如:自定义404错误(404 Not Found)页视图文件。

5、挂件目录(widgets):用于存放挂件文件,支持子目录。

6、类文件目录(library):用于存放除controller,model,视图,挂件之外的类文件(也支持非类文件),支持子目录。

7、扩展文件目录(extensions):用于存入第三方程序,如smarty, phpmailer等。

8、语言包目录(language):当网站支持多语言功能时,用于存放多语言包。一般情况下很少用到。