安装think PHP5

一、安装Composer

Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。

下载地址:https://getcomposer.org/Composer-Setup.exe

详细介绍可看这里 https://www.kancloud.cn/thinkphp/composer/35668

安装完成后在命令控制窗口(cmd)里打入“composer”看到如下界面说明安装成功

注意:最近composer镜像存在问题,可以改成在命令行里输入下面地址然后回车。

Composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 

二、安装tp5

如果你是第一次安装的话,在命令行下面,切换到你的WEB根目录(通常是www)下面并执行下面的命令:composer create-project topthink/think=5.1.* tp5 ,后面的tp5是项目名称,意思是在www下自动生成文件夹名称为tp5的,如果想命名其他可以把tp5改成其他名称。安装成功如下:

这里我是在zzp目录下执行安装命令,所以tp5会在zzp目录下,通常你们在www目录下执行就好。

现在只需要做最后一步来验证是否正常运行。在浏览器中输入地址:

http://localhost/tp5/public/, 如果浏览器输出如图所示:

三、Tp5目录结构

tp5  WEB部署目录(或者子目录)

├─application           应用目录

│  ├─common             公共模块目录(可以更改)

│  ├─module_name        模块目录(比如Index)

│  │  ├─common.php      模块函数文件

│  │  ├─controller      控制器目录

│  │  ├─model           模型目录

│  │  ├─view            视图目录

│  │  ├─config          配置目录

│  │  └─ ...            更多类库目录

│  │

│  ├─command.php        命令行定义文件

│  ├─common.php         公共函数文件

│  └─tags.php           应用行为扩展定义文件

├─config                应用配置目录

│  ├─module_name        模块配置目录

│  │  ├─database.php    数据库配置

│  │  ├─cache           缓存配置

│  │  └─ ...           

│  │

│  ├─app.php            应用配置

│  ├─cache.php          缓存配置

│  ├─cookie.php         Cookie配置

│  ├─database.php       数据库配置

│  ├─log.php            日志配置

│  ├─session.php        Session配置

│  ├─template.php       模板引擎配置

│  └─trace.php          Trace配置

├─route                 路由定义目录

│  ├─route.php          路由定义

│  └─...                更多

├─public                WEB目录(对外访问目录)

│  ├─index.php          入口文件

│  ├─router.php         快速测试文件

│  └─.htaccess          用于apache的重写

├─thinkphp              框架系统目录

│  ├─lang               语言文件目录

│  ├─library            框架类库目录

│  │  ├─think           Think类库包目录

│  │  └─traits          系统Trait目录

│  │

│  ├─tpl                系统模板目录

│  ├─base.php           基础定义文件

│  ├─convention.php     框架惯例配置文件

│  ├─helper.php         助手函数文件

│  └─logo.png           框架LOGO文件

├─extend                扩展类库目录

├─runtime               应用的运行时目录(可写,可定制)

├─vendor                第三方类库目录(Composer依赖库)

├─build.php             自动生成定义文件(参考)

├─composer.json         composer 定义文件

├─LICENSE.txt           授权说明文件

├─README.md             README 文件

├─think                 命令行入口文件

 

标准的应用和模块目录结构如下

 

├─application           应用目录(可设置)

│  ├─common             公共模块目录(可选)

│  ├─module1            模块1目录(比如Index)

│  │  ├─common.php      模块函数文件

│  │  ├─config         模块配置目录(可选)

│  │  ├─controller      控制器目录

│  │  ├─model           模型目录(可选)

│  │  ├─view            视图目录(可选)

│  │  └─ ...            更多类库目录

│  │

│  ├─module2            模块2目录

│  │  ├─common.php      模块函数文件

│  │  ├─config         模块配置目录(可选)

│  │  ├─controller      控制器目录

│  │  ├─model           模型目录(可选)

│  │  ├─view            视图目录(可选)

│  │  └─ ...            更多类库目录

四、url访问规则

http://localhost/tp5/public/index.php/模块/控制器/操作

比如http://localhost/tp5/public/index.php/Index/index/hello就是Index模块下的Index控制器的hello方法。

五、控制器定义

控制器文件通常放在application/module/controller下面,类名和文件名保持大小写一致,并采用驼峰命名(首字母大写)。我们在application\index\controller文件夹下新建Index.php文件,输入下面代码:


<?php

namespace app\index\controller;

use think\Controller;

class Index extends Controller

{
    public function hello()

    {

        return 'hello';

    }

}

​

访问URL是:

http://localhost/tp5/public/index.php/index/index/hello

六、数据库配置

数据库配置文件在tp5(项目名称)/ config/ database.php中,根据自己的实际情况配置以下几个信息:

七、视图加载

<?php

namespace app\index\controller;
use think\Controller;
use think\DB; 

class Index extends Controller
{
    public function hello()

    {
        // 不带任何参数 自动定位当前操作的模板文件来加载
        //系统会按照默认规则自动定位模板文件,其规则是:
        //当前模块(index)/view/当前控制器名(小写index)/当前操作(小写hello).html
        return $this->fetch();

    }

}

八、视图赋值

可查看 https://www.kancloud.cn/manual/thinkphp5_1/354066

assign方法

在控制器继承了系统的控制器基类的情况下,可以使用assign方法进行模板变量赋值。

namespace index\app\controller;

class Index extends \think\Controller
{
    public function hello()
    {
        // 模板变量赋值
        $this->assign('name','ThinkPHP');
        $this->assign('email','thinkphp@qq.com');
        // 或者批量赋值
        $this->assign([
            'name'  => 'ThinkPHP',
            'email' => 'thinkphp@qq.com'
        ]);
        // 模板输出
        return $this->fetch();
    }
}

在视图文件,我们只要写"{$name}"就是读取到“ThinkPHP”,写“{$email}”就能读取到“thinkphp@qq.com”

九、视图模板解析

可查看 https://www.kancloud.cn/manual/thinkphp5_1/354071

十、常用数据库查询

单条查询

// table方法必须指定完整的数据表名,下面查询id为1的单条数据

Db::table('think_user')->where('id',1)->find();

最终生成的SQL语句可能是:

SELECT * FROM `think_user` WHERE  `id` = 1 LIMIT 1

列表查询

下面表示查询status为1的列表:

Db::table('think_user')->where('status',1)->select();

最终生成的SQL语句可能是:

SELECT * FROM `think_user` WHERE `status` = 1

添加

$data = [‘name’=> ‘张三’, sex=> '男'];

Db::name('user')->insert($data);

以上语句表示插入user表字段name为张三,sex为男的语句。

修改

Db::name('user')->where('id', 1)->update(['name' => '李四']);

表示把user表里id为1的数据,name改为李四。

删除

// 根据主键(默认是id)删除

Db::table('think_user')->delete(1);

Db::table('think_user')->delete([1,2,3]);

// 条件删除   

Db::table('think_user')->where('id',1)->delete();

Db::table('think_user')->where('id','<',10)->delete();

最终生成的SQL语句可能是:

DELETE FROM `think_user` WHERE  `id` = 1

DELETE FROM `think_user` WHERE  `id` IN (1,2,3)

DELETE FROM `think_user` WHERE  `id` = 1

DELETE FROM `think_user` WHERE  `id` < 10

更多查询请看:

https://www.kancloud.cn/manual/thinkphp5_1/353999

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值