thinkphp6-简简单单地开发接口

news2024/10/8 14:07:09

目录

  • 1.前言
    • TP6简介
  • 2.项目目录
  • 3.运行项目
    • 运行命令
    • 访问规则
  • 4.model db使用
    • db连接配置
    • model编写及调用
    • 调用接口
  • 5.返回json格式

1.前言

基于上篇文章环境搭建后,便开始简单学习上手开发接口…记录重要的过程!
Windows-试用phpthink发现原来可这样快速搭建mysql、redis等环境、xdebug

TP6简介

thinkphp6官网文档:https://www.kancloud.cn/manual/thinkphp6_0/1037479

ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简代码的同时,更注重易用性。遵循Apache2开源许可协议发布,意味着你可以免费使用ThinkPHP,甚至允许把你基于ThinkPHP开发的应用开源或商业产品发布/销售。


2.项目目录

官网有介绍:点我
大同小异,应用名称、及下面的 controller、model 写接口一般只用到这两个。

www  WEB部署目录(或者子目录)
├─app           应用目录
│  ├─app_name           应用目录
│  │  ├─common.php      函数文件
│  │  ├─controller      控制器目录
│  │  ├─model           模型目录
│  │  ├─view            视图目录
│  │  ├─config          配置目录
│  │  ├─route           路由目录
│  │  └─ ...            更多类库目录
│  │
│  ├─common.php         公共函数文件
│  └─event.php          事件定义文件
│
├─config                全局配置目录
│  ├─app.php            应用配置
│  ├─cache.php          缓存配置
│  ├─console.php        控制台配置
│  ├─cookie.php         Cookie配置
│  ├─database.php       数据库配置
│  ├─filesystem.php     文件磁盘配置
│  ├─lang.php           多语言配置
│  ├─log.php            日志配置
│  ├─middleware.php     中间件配置
│  ├─route.php          URL和路由配置
│  ├─session.php        Session配置
│  ├─trace.php          Trace配置
│  └─view.php           视图配置
│
├─public                WEB目录(对外访问目录)
│  ├─index.php          入口文件
│  ├─router.php         快速测试文件
│  └─.htaccess          用于apache的重写
│
├─extend                扩展类库目录
├─runtime               应用的运行时目录(可写,可定制)
├─vendor                Composer类库目录
├─.example.env          环境变量示例文件
├─composer.json         composer 定义文件
├─LICENSE.txt           授权说明文件
├─README.md             README 文件
├─think                 命令行入口文件

以下是 controller 部分代码截图:
截图


3.运行项目

运行命令

-p:指定端口

php think run -p 80

当我们访问 http://127.0.0.1/admin 时,它将路由到 admin 应用下的 Index类index方法。
因这是它的默认配置。截图截图

访问规则

截图
如上图我们在 admin 应用下controller.Index.php中有个类为 Index及它的方法test,那么我们可以访问路由为:http://127.0.0.1/admin/index/test
截图

4.model db使用

db连接配置

prefix 为表名的前缀。
截图

model编写及调用

简简单单编写下

<?php
namespace app\admin\model;

use think\Model;

class User extends Model
{
    // 表名
    protected $name = 'user';
    // id
    protected $pk = 'user_id';

    public function getUserList()
    {
        // 查询所有数据
        return $this->select();
    }

    public function addUser($name)
    {
        // 新增
        return $this->save(['name' => $name]);
    }

    public function delUser($user_id)
    {
        // 删除
        return $this->where(['user_id' => $user_id])->delete();
    }

    public function updateUser($user_id, $name)
    {
        // 更新
        return $this->where(['user_id' => $user_id])->update(['name' => $name]);
    }
}

在这里插入图片描述
在controller下调用model:
截图

调用接口

查询:
截图
新增:
截图
再查询下:
截图
看着挺简单好理解的,但是为了方便我们日常开发那还是需要做各种封装比如common model、controller、response结构等。


5.返回json格式

使用:return json($this->renderJson(1, ‘’, $userList));

    public function db($name=null)
    {
        $userModel = new User();

        // 新增
        if (!empty($name)){
            if ($userModel->addUser($name)){
                return '新增成功';
            }
            return '服务异常';
        }
        // 查询
        $userList = $userModel->getUserList();
        return json($this->renderJson(1, '', $userList));
    }

截图
End

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/994607.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Data JPA:简化数据库交互的艺术

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

Jmeter 实现 mqtt 协议压力测试

1. 下载jmeter&#xff0c;解压 https://jmeter.apache.org/download_jmeter.cgi 以 5.4.3 为例&#xff0c;下载地址&#xff1a; https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.4.3.zip linux下解压&#xff1a; unzip apache-jmeter-5.4.3.zip 2. 下载m…

六)Stable Diffussion使用教程:图生图SD Upscale

这一篇说说SD放大(SD Upscale)。 图生图是没有 “高清修复” 选项的,因为从文生图的高清修复原理来看,图生图本身就是高清修复:只需要在重绘目标图像时,等比例增大图像的分辨率就可以了。 这里我们通过图库浏览器浏览一张图片,然后点击图生图,图片的所有出图参数就会…

运维学习之采集器 node_exporter 1.3.1安装并使用

参考《监控系统部署prometheus基本功能》先完成prometheus部署。 wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz下载压缩包。 tar -zxf node_exporter-1.3.1.linux-amd64.tar.gz进行解压。 cp node_e…

安全实战 | 怎么用零信任防范弱密码?

防范弱密码&#xff0c;不仅需要提升安全性&#xff0c;更需要提升用户体验。 比如在登录各类业务系统时&#xff0c;我们希望员工登录不同系统不再频繁切换账号密码&#xff0c;不再需要3-5个月更换一次密码&#xff0c;也不再需要频繁的输入、记录、找回密码。 员工所有的办…

Spring Boot与Kubernetes:现代云部署的完美组合

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

第六章 图 四、图的广度优先遍历(BFS算法、广度优先生成树、广度优先生成森林)

一、实现步骤 广度优先遍历的实现步骤如下&#xff1a; 1.从图的某一个节点开始&#xff0c;将该节点标记为已经访问过的节点。 2.将该节点加入到队列中。 3.当队列非空时&#xff0c;执行以下操作&#xff1a; a. 取出队列队首节点&#xff0c;并遍历该节点与之相邻的所有…

Spring AOP:面向切面编程在实际项目中的应用

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

算法之位运算

前言 位运算在我们的学习中占有很重要的地位&#xff0c;从二进制中数的存储等都需要我们进行位运算 一、位运算复习 1.位运算复习 按位与(&)&#xff1a;如果两个相应的二进制位都为1&#xff0c;则该位的结果值才为1&#xff0c;否则为0 按位或( | )&#xff1a;如果…

Spring Batch:处理大数据和批量任务的解决方案

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化

聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化 目录 聚类分析 | MATLAB实现基于SOM自组织特征映射聚类可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 基于自组织特征映射聚类算法(SOM)的数据聚类可视化 可直接运行 注释清晰 Matlab语言 1.多特征输入&…

数据接口工程对接BI可视化大屏(四)创建工程

第4章 创建工程 4.1 新建工程 在IDEA中新建工程&#xff0c;并使用SpringInitializr来创建&#xff1a; 点击下一步&#xff0c;输入项目的GAV坐标及工程构造方式后点击下一步&#xff1a; 点击下一步&#xff0c;选择主版本和模块&#xff0c;这里以Spring2.x版本为例&#…

Spring Reactive:响应式编程与WebFlux的深度探索

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

CLEAN-SC波束形成声源识别改进

CLEAN-SC 波束形成声源识别方法计算速度快、成像干净清晰、结果准确度高&#xff0c;但当传统延迟求和算法在各声源处输出的主瓣严重融合时&#xff0c;亦无法准确分辨声源。造成该缺陷的原因为: 主瓣严重融合时&#xff0c;CLEAN-SC 所基于的延迟求和输出峰值所在聚焦点即为声…

一、认识GitHub项目 —— TinyWebServer

认识GitHub项目 —— TinyWebServer 一、前言 这个项目是Linux下C轻量级Web服务器。几乎是想从事C服务器开发方向的同学的必备初始项目了。属于那种&#xff0c;“烂大街”&#xff0c;但是你又不能不会的项目。 对这个项目笔者打算多分几章讲解&#xff0c;帮助刚用GitHub&a…

系统架构设计高级技能 · 通信系统架构设计理论与实践

现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 点击进入系列文章目录 系统架构设计高级技能 通信系统架构设计理论与实践 一、通信系统网络架构1.1 局域…

音视频质检及画质评估——为QoS QoE 指标保驾护航

// 腾讯已有超过21年的音视频技术积累&#xff0c;独家具备 RT-ONE 全球网络。此外&#xff0c;构建了包括实时音视频、云直播、云点播、即时通信、媒体处理等业界最完整的 PaaS 及 aPaaS 产品家族&#xff0c;面向各大场景提供低代码解决方案&#xff0c;开发者和企业可以快…

lighttpd以及socket和WebSocket编程

综述 本文涉及到下图绿色背景部分的内容&#xff1a; 左侧位于Linux下&#xff0c;其中包括lighttpd和socket程序&#xff1b;右侧是WebSocket程序。两者通过网络交互。 本文介绍lighttpd的基本使用方式&#xff0c;并通过编程完成一个socket服务器与浏览器端的WebSocket客户…

180B参数的Falcon登顶Hugging Face,vs chatGPT 最好开源大模型使用体验

文章目录 使用地址使用体验test1:简单喜好类问题test2:知识性问题test3:开放性问题test4:中文支持test5:问题时效性test6:学术问题使用地址 https://huggingface.co/spaces/tiiuae/falcon-180b-demo 使用体验 相比Falcon-7b,Falcon-180b拥有1800亿的参数量

【数据结构】AVL树的插入和自平衡调整

AVL树是最早发明的自平衡二叉查找树。在AVL树中&#xff0c;任一节点对应的两颗子树的最大高度差为1&#xff0c;因此他被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是 O ( log ⁡ n ) O(\log{n}) O(logn)增加和删除操作后可能需要通过一次货多次旋转…