了解一下下:
ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷Web应用开发和简化企业级应用开发而诞生的。
下载:
官方的网站为:http://thinkphp.cn。
SVN的下载地址为:
完整版本http://thinkphp.googlecode.com/svn/trunk
核心版本http://thinkphp.googlecode.com/svn/trunk/ThinkPHP
ThinkPHP框架中目录分为两部分:系统目录和项目目录.
目录名称 主要作用
Common 包含框架的一些公共文件、系统定义和惯例配置等
Lang 目录语言文件夹,目前ThinkPHP支持的语言包有简体中文、繁体中文、英文
Lib 系统的基类库目录
Tpl 系统的模板目录
Mode 框架模式扩展目录
项目目录是用户实际应用的目录,如下表所示(ThinkPHP采用自动创建文件
夹的机制,当用户布置好ThinkPHP的核心类库后,编写运行入口文件,则相关
应用到的项目目录就会自动生成)
ThinkPHP的命名规范:
1.类文件都是以.class.php为后缀(这里指的是ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如DbMysql.class.php。
函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求)。
确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写)。
类名和文件名一致(包括上面说的大小写一致),例如UserAction类的文件命名是UserAction.class.php, InfoModel类的文件名是InfoModel.class.php,
函数的命名使用小写字母和下划线的方式,例如get_client_ip
Action控制器类以Action为后缀,例如UserAction、InfoAction
模型类以Model为后缀,例如UserModel、InfoModel
方法的命名使用驼峰法,并且首字母小写,例如getUserName
属性的命名使用驼峰法,并且首字母小写,例如tableName
以双下划线“__”打头的函数或方法作为魔法方法,例如__call 和__autoload
常量以大写字母和下划线命名,例如HAS_ONE和 MANY_TO_MANY
配置参数以大写字母和下划线命名,例如HTML_CACHE_ON
语言变量以大写字母和下划线命名,例如MY_LANG,以下划线开头的语言变量通常用于系统语言变量,例如_CLASS_NOT_EXIST_。
数据表和字段采用小写加下划线方式命名,例如think_user和user_name
配置文件:
配置文件是ThinkPHP框架程序得以运行的基础条件,框架的很多功能都需要在配置文件中配置之后,才可以生效。包括:URL路由功能,页面伪静态和静态化等等。ThinkPHP的配置功能采用数组方式定义,支持惯例配置、项目配置、调试配置和模块配置,并且会自动生成配置缓存文件,无需重复解析。在本节中主要讲解ThinkPHP的配置格式,以及调试配置。
小试牛刀:
1.我们先在WEB根目录下面创建一个app子目录(这个app就是我们的项目名),然后在该目录下面创建一个index.php文件,添加一行简单的代码:
<?php
require '/ThinkPHP框架所在目录/ThinkPHP.php';
这行代码的作用就是加载ThinkPHP框架的入口文件ThinkPHP.php,这是所有基于ThinkPHP开发应用的第一步。
然后,在浏览器中访问这个入口文件。
http://localhost/app/
一般Web服务器的默认文件是index.php,所以我们可以不需要在URL地址中加上index.php。运行后我们会看到欢迎页面,而且已经自动生成了项目目录,目录结构如下:
1.├─index.php 项目入口文件
2.├─Common 项目公共文件目录
3.├─Conf 项目配置目录
4.├─Lang 项目语言目录
5.├─Lib 项目类库目录
6.│ ├─Action Action类库目录
7.│ ├─Behavior 行为类库目录
8.│ ├─Model 模型类库目录
9.│ └─Widget Widget类库目录
10.├─Runtime 项目运行时目录
11.│ ├─Cache 模板缓存目录
12.│ ├─Data 数据缓存目录
13.│ ├─Logs 日志文件目录
14.│ └─Temp 临时缓存目录
15.└─Tpl 项目模板目录
2:创建一个名字为thinkphp的数据库,并创建一个表
CREATE TABLE IF NOT EXISTS `think_data` (
`id` int(8) unsigned NOT NULL AUTO_INCREMENT,
`data` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `think_data` (`id`, `data`) VALUES
(1, 'thinkphp'),
(2, 'php'),
(3, 'framework');
3.修改配置文件(位于项目目录的Conf/config.php)
'DB_TYPE' => 'mysql',
'DB_HOST' => 'localhost',
'DB_NAME' => 'thinkphp',
'DB_USER' => 'root',
'DB_PWD' => '',
'DB_PORT' => '3306',
'DB_PREFIX' => 'think_'
4.index控制器修改
class IndexAction extends Action {
public function index(){
$Data = M('Data'); // 实例化Data数据模型
$this->data = $Data->select();
$this->display();
}
}
5.index模板修改:
<html>
<head>
<title>Select Data</title>
</head>
<body>
<volist name="data" id="vo">
{$vo.id}--{$vo.data}<br/>
</volist>
</body>
</html>
6.访问http://localhost/app/
成功输出:
1--thinkphp
2--php
3--framework
ok,初步完成
ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷Web应用开发和简化企业级应用开发而诞生的。
下载:
官方的网站为:http://thinkphp.cn。
SVN的下载地址为:
完整版本http://thinkphp.googlecode.com/svn/trunk
核心版本http://thinkphp.googlecode.com/svn/trunk/ThinkPHP
ThinkPHP框架中目录分为两部分:系统目录和项目目录.
目录名称 主要作用
Common 包含框架的一些公共文件、系统定义和惯例配置等
Lang 目录语言文件夹,目前ThinkPHP支持的语言包有简体中文、繁体中文、英文
Lib 系统的基类库目录
Tpl 系统的模板目录
Mode 框架模式扩展目录
项目目录是用户实际应用的目录,如下表所示(ThinkPHP采用自动创建文件
夹的机制,当用户布置好ThinkPHP的核心类库后,编写运行入口文件,则相关
应用到的项目目录就会自动生成)
ThinkPHP的命名规范:
1.类文件都是以.class.php为后缀(这里指的是ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如DbMysql.class.php。
函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求)。
确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写)。
类名和文件名一致(包括上面说的大小写一致),例如UserAction类的文件命名是UserAction.class.php, InfoModel类的文件名是InfoModel.class.php,
函数的命名使用小写字母和下划线的方式,例如get_client_ip
Action控制器类以Action为后缀,例如UserAction、InfoAction
模型类以Model为后缀,例如UserModel、InfoModel
方法的命名使用驼峰法,并且首字母小写,例如getUserName
属性的命名使用驼峰法,并且首字母小写,例如tableName
以双下划线“__”打头的函数或方法作为魔法方法,例如__call 和__autoload
常量以大写字母和下划线命名,例如HAS_ONE和 MANY_TO_MANY
配置参数以大写字母和下划线命名,例如HTML_CACHE_ON
语言变量以大写字母和下划线命名,例如MY_LANG,以下划线开头的语言变量通常用于系统语言变量,例如_CLASS_NOT_EXIST_。
数据表和字段采用小写加下划线方式命名,例如think_user和user_name
配置文件:
配置文件是ThinkPHP框架程序得以运行的基础条件,框架的很多功能都需要在配置文件中配置之后,才可以生效。包括:URL路由功能,页面伪静态和静态化等等。ThinkPHP的配置功能采用数组方式定义,支持惯例配置、项目配置、调试配置和模块配置,并且会自动生成配置缓存文件,无需重复解析。在本节中主要讲解ThinkPHP的配置格式,以及调试配置。
小试牛刀:
1.我们先在WEB根目录下面创建一个app子目录(这个app就是我们的项目名),然后在该目录下面创建一个index.php文件,添加一行简单的代码:
<?php
require '/ThinkPHP框架所在目录/ThinkPHP.php';
这行代码的作用就是加载ThinkPHP框架的入口文件ThinkPHP.php,这是所有基于ThinkPHP开发应用的第一步。
然后,在浏览器中访问这个入口文件。
http://localhost/app/
一般Web服务器的默认文件是index.php,所以我们可以不需要在URL地址中加上index.php。运行后我们会看到欢迎页面,而且已经自动生成了项目目录,目录结构如下:
1.├─index.php 项目入口文件
2.├─Common 项目公共文件目录
3.├─Conf 项目配置目录
4.├─Lang 项目语言目录
5.├─Lib 项目类库目录
6.│ ├─Action Action类库目录
7.│ ├─Behavior 行为类库目录
8.│ ├─Model 模型类库目录
9.│ └─Widget Widget类库目录
10.├─Runtime 项目运行时目录
11.│ ├─Cache 模板缓存目录
12.│ ├─Data 数据缓存目录
13.│ ├─Logs 日志文件目录
14.│ └─Temp 临时缓存目录
15.└─Tpl 项目模板目录
2:创建一个名字为thinkphp的数据库,并创建一个表
CREATE TABLE IF NOT EXISTS `think_data` (
`id` int(8) unsigned NOT NULL AUTO_INCREMENT,
`data` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `think_data` (`id`, `data`) VALUES
(1, 'thinkphp'),
(2, 'php'),
(3, 'framework');
3.修改配置文件(位于项目目录的Conf/config.php)
'DB_TYPE' => 'mysql',
'DB_HOST' => 'localhost',
'DB_NAME' => 'thinkphp',
'DB_USER' => 'root',
'DB_PWD' => '',
'DB_PORT' => '3306',
'DB_PREFIX' => 'think_'
4.index控制器修改
class IndexAction extends Action {
public function index(){
$Data = M('Data'); // 实例化Data数据模型
$this->data = $Data->select();
$this->display();
}
}
5.index模板修改:
<html>
<head>
<title>Select Data</title>
</head>
<body>
<volist name="data" id="vo">
{$vo.id}--{$vo.data}<br/>
</volist>
</body>
</html>
6.访问http://localhost/app/
成功输出:
1--thinkphp
2--php
3--framework
ok,初步完成