本文环境php7.3
安装
本文安装的是开发版本,默认大家都安装了composer
composer create-project topthink/think=6.0.x-dev tp
安装完成先开启调试,就是将文价夹下的.example.env改为.env即可
开启后执行
php think run
打开浏览器http://127.0.0.1就能看到thinkphp的标志了,并且右下角这个标志就是调试的标志
目录结构和配置好像不是很难这里就不做概述
控制器controller
thinkphp默认使用单应用模式
如果要使用多应用模式,需要先安装扩展
composer require topthink/think-multi-app
thinkphp控制器和原生php没什么两样,如果我们需要用它的方法就需要继承它
这是一个简单的控制器类,在单应用模式下,直接写在controller中即可
<?php
namespace app\controller;
use app\BaseController;
class Admin extends BaseController{
public function login(){
echo "欢迎使用登录方法";
}
}
访问页面
http://127.0.0.1:8000/admin/login
admin控制器下的login方法,至于index.php可以直接省略,原理是通过配置伪静态来实现
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>
只需要在.htaccess文件填入上面的内容即可
模型model
定义一个user模型,对应数据库的user表
<?php
namespace app\model;
use think\Model;
class User extends Model{
public function getxUser(){
//具体数据处理逻辑
return "获取用户成功成功";
}
}
操作模型要先连接数据库
数据库就自行设计
我在本地测试环境中用的是测试环境,所以数据库配置就直接在.env中修改不用去config/database.php中修改
控制器调用模型
在admin控制器中引入User模型,并调用模型中的方法
<?php
namespace app\controller;
use app\BaseController;
use app\model\User;
class Admin extends BaseController{
public function login(){
$User = new User(); //实例化user类
$res = json_encode($User->getxUser()); //将返回结果转为json类型
echo $res;
echo "欢迎使用登录方法";
}
}
模型类,这里用了thinkphp给我们提供的方法,引入Db类查询数据
<?php
namespace app\model;
use think\facade\Db;
use think\Model;
class User extends Model{
public function getxUser(){
//具体数据处理逻辑
return Db::table('sp_user')->where('user_id',1)->find();
}
}
最后我们访问浏览器
http://127.0.0.1:8000/admin/login
admin下的login方法得到以下结果