安装tp6 和配置
1安装tp6:命令: composer create-project topthink/think tp
2 创建多应用模式安装扩展
composer require topthink/think-multi-app
3 快速生成模块应用 php think build demo
4 创建模块下的 控制器类php think make:controller index@Blog
wx login登录
1 控制器登录层
<?php
declare (strict_types = 1);
namespace app\api\controller;
use app\api\model\user as UserModel;
use app\api\server\Token as TokenServer;
use think\Request;
class Login
{
public function wxLogin(Request $request){
//echo 1234;die();
//获取code码
$code = $request->get('code'); //var_dump($code);die();
//获取微信授权url
$url = sprintf(config('wx.url'),config('wx.AppID'),config('wx.AppSecret'),$code);
//获取openid
$data = curlGet($url);
// var_dump($data);die();
//进行查询数据库里面是否有该用户,如果没有,则进行新增
$user = UserModel::where('openid',$data['openid'])->find();
//如果没有用户进行创建
if (empty($user)){
$user = UserModel::create([
'openid'=>$data['openid']
]);
}
//生成token,保存用户登录状态
$token = (new TokenServer())->generateToken($user->id);
return json(['token'=>$token,'error_code'=>0,'msg'=>'登录成功']);
//return json(['token'=>$token,'error_code'=>0,'msg'=>'登录成功','openid'=>$user['openid']]);
}
}
在模块下的common.php 文件里配置 系统自动生成的公共文件
<?php
// 这是系统自动生成的公共文件
function curlGet($url){
$headerArray =array("Content-type:application/json;","Accept:application/json");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST</