程序人生
TinkPHP学习专题之基础
作者:邵波涛    时间:2016-08-19 浏览量:246

ThinkPHP是一款国产框架,也属于轻量级的框架产品,在国内得到了一定的推崇,当然母语的手册是很多人选择的原因,不过可惜的是经过简单的接触发现手册上存在很多的坑,主要是版本更替后没有及时地升级更新手册,也没有学习样例包,社区里往往也找不到答案,所以有些时候入手不见得比洋框架快。不过经历过后倒也是一款很不错的工具。
结合本站的开发过程,大体总结一下ThinkPHP3.2.3目前的一些心得以备忘,重要提醒:首先的首先要找一个好模板,最好别有太多的外部定义数据,否则改模板比写程序还麻烦。
一、建立项目
首先布置好开发环境,WAMP/WNMP/LAMP/LNMP等都行,拷贝ThinkPHP及入口文件至虚拟网站根目录,在虚拟网站根目录中设置ThinkPHP的入口文件index.php,注意Linux中大小写敏感;一般只需要关注以下两项:

// 开启调试模式 开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',True);
// 定义应用目录
define('APP_PATH','./Blog/');

然后访问虚拟网站地址,例如:http://localhost/一个项目Blog的文件夹便自动创建完成,下面包含Common、Conf、Controller、Model、View文件夹;
二、项目基本设置
系统设置的参数在ThinkPHP\Conf\convention.php,一般不要改动系统设置,需要做项目时改动项目自身设置文件即可,例如本例中文件为Blog\Home\Conf\config.php,需要改动设置时,在该文件中设置,即可在该项目范围内覆盖系统中设置,例如:

'配置值'
    'URL_MODEL'=>1,//pathinfo模式,0是普通模式,2是rewrite模式,3是兼容模式
    'URL_CASE_INSENSITIVE'  =>  true,//大小写不敏感,访问URL地址时是否区分大小写
    'Show_Page_Trace'=>true,//观察过程生成日志
    'TMPL_TEMPLATE_SUFFIX'  =>  '.php',//模板文件后缀名    
    'DB_TYPE'   => 'mysql', // 数据库类型
    'DB_HOST'   => 'localhost', // 服务器地址
    'DB_NAME'   => 'db_blog', // 数据库名
    'DB_USER'   => 'root', // 用户名
    'DB_PWD'    => 'root', // 密码
    'DB_PORT'   => 3306, // 端口
    'DB_PREFIX' => 't_', // 数据库表前缀
    'DB_CHARSET'=> 'utf8', // 字符集
);

三、项目基本目录
主要网站开发工作都在Controller、Model、View文件夹中进行,Controller文件夹中是控制器,主要实现逻辑功能,处理转发请求与数据,连接前后台,命名要求首字母大写,带Controller组合,带.class后缀,例如:IndexCotroller.class.php,内部类的定义要求首字母大写,类名与命名一致,内部的public函数称为方法,例如:

namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
    public function default(){        
        $this->display();
}

View文件夹中是视图,主要实现数据呈现及输入采集,文件夹下以控制器命名为名称建立相应的文件夹,同一控制器操纵诸多视图的工作,视图名称一般与相应控制器内的的public方法相对应,例如:对于上述控制器应该视图文件为Blog\Home\View\Index\default.php,也可以随便命名,但在输出是指明视图名称也可,例如控制器内 $this->display('default2');视图模板后缀由'TMPL_TEMPLATE_SUFFIX'  配置决定。
Model文件夹内是模型,主要用来操纵数据库,不过因为ThinkPHP的数据操作功能强大,支持无Model操作,且支持链式操作,一般处理几句代码在逻辑层都能轻松实现,因此Model往往被淡化,甚至只作为简单的公共的数据校验的工作。


发言请留称呼=>
本文留言
共有 0 条留言
扫一扫,手机浏览网站
友情链接
申请链接