安装与仓库已经调整完毕,现在开发业务架构逻辑,其次再开发功能逻辑。业务架构逻辑开发与功能逻辑开发不是一回事,一定要明白。业务架构指的是做某一件事或是某一种类型的事的逻辑,在互联网web应用中通常指一套系统的外在逻辑,比如说平台端或是客户端等,它是由前后端联合在一起使用的逻辑。而功能逻辑指的是某一件事分成很多块,而每一块就是一种功能逻辑。
根据《群控系统服务端开发模式-程序草图设计》就能发现,今天第一个要解决的就是Base.php及Emptys.php。
一、入口文件index.php
添加网页前端跨域、字符集及添加环境配置的设置值。
<?php
// [ 应用入口文件 ]
namespace think;
//去除前端跨域
header("Content-type:text/html;charset=utf-8");
/*header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Methods: GET, POST");
header('Access-Control-Allow-Headers: content-type,Authorization');*/
require __DIR__ . '/../vendor/autoload.php';
// 执行HTTP应用并响应
$http = (new App())->setEnvName('development')->http;
$response = $http->run();
$response->send();
$http->end($response);
二、复制环境配置文件(.example.env)
1、一份是测试环境、一份是正式环境,一共两份。
a、测试环境配置文件命名为:.env.development
b、正式环境配置文件命名为:.env.production
2、将根目录下的.gitignore文件复制一份到public目录下
a、将根目录.gitignore文件中的.env删除掉
b、将public目录.gitignore文件中的.env删除掉并添加index.php
3、修改路由文件配置
a、将config文件目录下的route.php文件中是否强制使用路由参数的值修改为true
// 是否强制使用路由
'url_route_must' => true
b、向route目录下的app.php文件中加入以下代码
Route::miss('Emptys/index');
4、创建Emptys.php控制文件
a、在app目录中controller文件下,新建Emptys.php文件,输入如下代码
<?php
/**
* 全局空处理
* User: 龙哥 三年风水
* Date: 2024/10/26/0026
* Time: 21:18
*/
namespace app\controller;
use app\BaseController;
class Emptys extends BaseController
{
public function index(){
return error('正在开发中,敬请期待!');
}
}
5、添加几个函数(框架常用函数)
a、err函数(错误类型)
b、succ函数(成功类型)
c、warn函数(警告类型)
d、info函数(信息类型)
<?php
// 应用公共文件
if (!function_exists('succ')) {
/**
* 请求成功返回
* @ param string $msg
* @ param array $data
* @ return \think\response\Json
*/
function succ($msg = '操作成功' , $data = []){
$result['code'] = 20000; // 状态码
$result['message'] = $msg; // 提示信息
$result['time'] = time(); // 请求返回时间
$result['data'] = count($data) > 0 ? $data : 'SUCCESS'; // 请求返回数据
return json($result);
}
}
if (!function_exists('err')){
/**
* 请求失败返回-错误
* @ param string $msg
* @ return \think\response\Json
*/
function err($msg = '操作失败'){
$result['code'] = 50000; // 状态码
$result['message'] = $msg; // 提示信息
$result['time'] = time(); // 请求返回时间
$result['data'] = 'ERROR'; // 请求返回数据
return json($result);
}
}
if (!function_exists('warn')){
/**
* 请求失败返回-警告
* @ param string $msg
* @ return \think\response\Json
*/
function warn($msg = '违反系统操作'){
$result['code'] = 50034; // 状态码
$result['message'] = $msg; // 提示信息
$result['time'] = time(); // 请求返回时间
$result['data'] = 'WARNING'; // 请求返回数据
return json($result);
}
}
if (!function_exists('info')){
/**
* 请求失败返回-指示提醒
* @ param string $msg
* @ param int $code
* @ return \think\response\Json
*/
function info($msg = '请规范操作', $code = 50000){
$result['code'] = $code; // 状态码
$result['message'] = $msg; // 提示信息
$result['time'] = time(); // 请求返回时间
$result['data'] = 'INFO'; // 请求返回数据
return json($result);
}
}
三、提前说明
明天将会带来创建管理员表及管理员控制开发