贴一个我的项目目录,对刚接触ThinkPHP3.0的同学很有帮助的
此文件时入口文件index.PHP
- <?php
-
-
- define('THINK_PATH','./ThinkPHP/');
-
-
- define('APP_NAME','protal');
-
-
- define('APP_PATH','./protal/');
-
- define('APP_DEBUG', true);
-
- require THINK_PATH.'ThinkPHP.php';
conf/config.php
- <?php
-
- $dbConf=include './config.inc.php';
-
-
- $Conf=array(
-
-
- 'URL_MODEL'=>2,
-
- );
- return array_merge($dbConf,$Conf);
-
- ?>
与入口文件同级的有一个配置文件config.inc.php
- <?php
- return array(
-
- 'DB_TYPE'=>'mysql',
-
- 'DB_HOST'=>'localhost',
-
- 'DB_NAME'=>'think',
-
- 'DB_USER'=>'root',
-
- 'DB_PWD'=>'',
-
- 'DB_PORT'=>'3306',
-
- 'DB_PREFIX'=>'t_',
-
- )
- ?>
控制器IndexAction.class.php
- <?php
-
- class IndexAction extends Action {
- public function index(){
- header("Content-Type:text/html; charset=utf-8");
- $this->display("reg");
- }
-
- function add(){
-
-
-
- if(md5($_POST['verify'])!=$_SESSION['verify']){
-
- $this->error("验证码错误");
- }
-
-
-
- $user=D("User");
-
- if($user->create()){
-
-
-
- if($user->add()){
-
- $this->success("注册成功");
- }else{
-
- $this->error("注册失败");
- }
-
-
-
- }else{
-
-
-
-
- $this->error($user->getError());
-
-
- }
-
- }
-
-
-
- function verify(){
-
-
-
-
-
-
-
-
-
-
-
- import("ORG.Util.Image");
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image::buildImageVerify(4,1,'gif',60,22,'verify');
-
-
-
-
- }
-
-
-
-
- }
模型UserModel.class.php
- <?php
- class UserModel extends Model{
-
-
- protected $_validate=array(
-
- array("username","require","用户名不能为空"),
- array("username","checkLength","用户名长度不符合要求",0,'callback'),
- array("password","require","密码不能为空"),
- array("password","checkLength","密码长度的要求是5~15位之间",0,'callback'),
- array("password","repassword","两次密码输入不一致",0,'confirm'),
- array("qq","require","qq必须填写"),
-
-
-
-
- );
-
-
-
- protected $_auto=array(
-
- array("password","md5",3,'function'),
- array("cdate","shijian",3,'callback'),
- array("dizhi","getIp",3,'callback'),
-
- );
-
-
-
-
-
-
-
-
-
-
- function checkLength($data){
-
- if(strlen($data)<5||strlen($data)>15){
-
- return false;
- }else{
-
- return true;
- }
-
-
- }
-
-
-
-
- function getIp(){
-
- return $_SERVER['REMOTE_ADDR'];
- }
-
- function shijian(){
-
- return date("Y-m-d H:i:s");
- }
-
-
-
- }
模板reg.html
- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
- <title>注册</title>
- </head>
- <body>
- <form action="__URL__/add" method="post" >
- <table width="407" height="424" align="center">
- <th height="95"><H2>请认真填写以下注册信息</H2></th>
- <tr>
- <td><table height="273" align="center">
- <tr>
- <td width="74" align="right">用户名:</td>
- <td width="304" align="left"><input type="text" name="username"></td>
- </tr>
- <tr>
- <td height="70" align="right">密码:</td>
- <td align="left"><input type="password" name="password"></td>
- </tr>
- <tr>
- <td align="right">确认密码:</td>
- <td align="left"><input type="password" name="repassword"></td>
- </tr>
- <tr>
- <td align="right">QQ:</td>
- <td align="left"><input type="text" name="qq"></td>
- </tr>
- <tr>
- <td align="right">验证码:</td>
- <td align="left"><input type="text" name="verify" >
- <img id="verify" alt="验证码" onClick="show()" src="__URL__/verify"><a href="javascript:show()">看不清楚</a></td>
- </tr>
- <tr>
- <td colspan="2" align="center"><input type="submit" value="提交"></td>
- </tr>
- </table></td>
- </tr>
- </table>
- </form>
- </body>
- </html>
-
- <script>
-
-
- function show(){
- document.getElementById("verify").src="__URL__/verify/random"+Math.random();
-
- }
-
-
- </script>
如果还有不明白的地方,可以给我留言,我会详细解答您留下的问题,谢谢关注
目录结构如下
TP
--------ThinkPHP 文件夹
--------protal.php 这个文件叫protal.php
当运行protal.php时,会出现ThinkPHP的欢迎页面,证明已经配置成功,同时目录结果会发生变化
此时的目录为
TP
--------ThinkPHP 文件夹
--------protal.php 入口文件(上边那个文件)
--------protal 文件夹
生成的项目目录结构和系统目录类似,包括:
Common | 项目公共文件目录,一般放置项目的公共函数 |
Conf | 项目配置目录,项目所有的配置文件都放在这里 |
Lang | 项目语言包目录(可选 如果不需要多语言支持 可删除) |
Lib | 项目类库目录,通常包括Action和Model子目录 |
Tpl | 项目模板目录,支持模板主题 |
Runtime | 项目运行时目录,包括Cache(模板缓存)、Temp(数据缓存)、Data(数据目录)和Logs(日志文件)子目录,如果存在分组的话,则首先是分组目录。 |
MySQL> SELECT FROM_UNIXTIME(875996580);
-> '1997-10-04 22:23:00'
mysql> SELECT UNIXTIME_TIMESTAMP('1997-10-04 22:23:00');
-> '875996580'