ThinkPHP是国产简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开发体验和易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供了强有力的支持。
ThinkPHP框架的目录结构:
Common:存放当前项目的公共函数
Lib:存放当前项目的控制器和模型
| Action 控制器目录
| Behavior 行为管理目录
| Model 项目模型文件
Lang:存放当前项目的语言包
Conf:存放当前项目的配置文件
Runtime:存放当前项目的运行时的文件
Tpl:存放当前项目的模版文件
采用MVC设计思想,其中MC放在Lib目录下,V放在Tpl目录下
ThinkPHP框架的运行流程:
1, 加载ThinkPHP.php -> require("ThinkPHP/ThinkPHP.php");
2, 加载核心文件-> ./thinkPHP/LIB/core
3, 加载项目的文件 分析URL 调用相关控制器
m module 模块 控制器
a action 方法action = 页面 (简单理解)
例如:
$module = isset($_GET['m']) ? : $_GET['m'] : index.php ;
$action = isset($_GET['a'])? :$_GET['a'] : index.php;
$php = new$module(); //实例化
$php -> $action();
class index{
function __construct(){
echo '调用index控制器':
}
function index(){
echo 'index控制器的index方法':
}
}
访问http://localhost/php/index.php?m=index&a=index
输出:调用index控制器index控制器的index方法
ThinkPHP框架的URL模式:
URL_MODULE
1默认模式
0普通模式
2重写模式
3兼容模式
ThinkPHP框架模版建立:
在Tpl文件夹下,文件夹的名字是以你的action来命名,若有index(action),则建立index为名称的文件夹,为index(action)的index方法建立模版,则建立index.html,用$this->display() 输出。若用$this->assign('变量名',变量值)
class IndexAction extends Action(){
public function index(){
$name = 'Donsen';
$date = date('Y-m-d');
$this -> assign('name',$name) -> assign('sex','man') -> assign('today',$date);
$this -> display();
}
}
{$Think.now} //输出时间
{$Think.version} //显示ThinkPhp的版本号