thinkphp6-简简单单地开发接口

目录

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 写接口一般只用到这两个。

bash 复制代码
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:指定端口

bash 复制代码
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 复制代码
<?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));

php 复制代码
    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

相关推荐
两个人的幸福5 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
BingoGo7 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack7 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户3074596982078 天前
PHP 扩展——从入门到理解
php
鹏仔先生9 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
qq_369224339 天前
Windows全系通用!ntdll.dll文件丢失、报错、闪退问题的完整排查与修复教程
windows·dll·dll修复·dll丢失·dll错误
云水一下9 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
xingpanvip9 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua
阿米亚波9 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
酉鬼女又兒9 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php