ThinkPHP学习(一)

大体看了一下,觉得ThinkPHP真是一个不错的框架。我个人认为使用框架最大的好处是:它给你做了很多事情,而且做得很好!

ThinkPHP目前版本到了3.2,没敢用最新的,使用3.1作为学习目标,因为资料查阅起来相对多一些  :-)

现在在ThinkPHP基础上还了OneThink、WeiPHP,都是很不错的开源框架,谢谢作者的辛苦付出!

 -------------------------------------------华丽的开始分割线------------------------------------------------------------------

言归正传,开始学习。

首先到官网下载需要的包:

http://www.thinkphp.cn/

解压到网站目录下,然后在网站根目录下建立一个简单的入口文件:index.php:

<?php
//定义项目名称和路径
define(‘APP_NAME‘, ‘App‘);
define(‘APP_PATH‘, ‘./App/‘);
define(‘APP_DEBUG‘,TRUE);
// 加载框架入口文件
require( "./ThinkPHP/ThinkPHP.php");

详细的介绍请参考官方文档,在此不再抄一遍了。

然后在浏览器中访问:
http://localhost

哇,看到了吗?竟然运行起来了!

:)
欢迎使用 ThinkPHP!

就这么简单到没有朋友!

运行后系统会自动给你生成各种目录及缺省的框架文件,我喜欢  :-)

 

好吧,我们要故意做得复杂一点,将项目建立前台和后台:

在App/Conf中的config.php中配置一下:

<?php
return array(
    //‘配置项‘=>‘配置值‘

     ‘URL_MODEL‘                 =>3, // 如果你的环境不支持PATHINFO 请设置为3
    ‘DB_TYPE‘                   =>  ‘mysql‘,
    ‘DB_HOST‘                   =>  ‘localhost‘,
    ‘DB_NAME‘                   =>  ‘studyphp‘,
    ‘DB_USER‘                   =>  ‘root‘,
    ‘DB_PWD‘                    =>  ‘‘,
    ‘DB_PORT‘                   =>  ‘3306‘,
    ‘DB_PREFIX‘                 =>  ‘think_‘,
    ‘APP_AUTOLOAD_PATH‘         =>  ‘@.TagLib‘,
    ‘APP_GROUP_LIST‘            =>  ‘Home,Admin‘,
    ‘DEFAULT_GROUP‘             =>  ‘Home‘,
    ‘APP_GROUP_MODE‘            =>  1,
    ‘SHOW_PAGE_TRACE‘           =>  1//显示调试信息
);
?>

在App下建立Modules目录,然后在Modules下依次建立Home,在Home中依次建立:Action、Model、Tpl目录。然后在Action中建立一个索引文件:

IndexAction.class.php:

<?php

class IndexAction extends Action{
    
    public function index(){
        echo ‘Hello,ThinkPHP !‘;
    }
}

好了,再访问http://localhost:

Hello,ThinkPHP !

我们的项目已经可以分组管理了!当然,Admin组的建立同Home,这里不再描述。

什么?模板输出的太简单?好吧,我们搞个漂亮点的显示,在Tpl中建立Index目录,在Index目录下建立一个index.html文件:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>ThinkPHP</title>
 </head>
 <body>
 <div class="main">
 <h2>{$hello}</h2>
</div>
 </body>
</html>

这回满意了?

恩,我承认,我只是将要输出的字体简单处理了一下:

 <h2>{$hello}</h2>

来,修改一下后台(有后台,是不是腰板比较硬?说的是腰板噢)

<?php

class IndexAction extends Action{
    
    public function index(){
        $hello=‘Hello,ThinkPHP !‘;
        $this->assign(‘hello‘,$hello);
        $this->display();
    }
}

 

这回算这个示例算是比较完整了,我们使用了框架,程序分了组,设置了输出模板,一个简单的从后台到前台的系统就建立起来了。

等等,上面配置的数据库干嘛?后面会用得上。

-------------------------------------------华丽的结束分割线------------------------------------------------------------------

且听下回分解!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。