码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [PHP]写个简单的分页静态接口用宝塔部署到Nginx


    使用get方式传入page和pageSize参数,接口根据参数进行分页处理。

    1.创建一个 PHP 文件

    例如 city.php,用于定义接口和返回 JSON 数据。

    2.在 city.php 文件中编写接口

    1. // 设置响应内容为 JSON 格式
    2. header('Content-Type: application/json');
    3. // 获取传入的参数
    4. $page = isset($_GET['page']) ? intval($_GET['page']) : 1; // 当前页码,默认为第一页
    5. $pageSize = isset($_GET['pageSize']) ? intval($_GET['pageSize']) : 10; // 每页数据条数,默认为 10
    6. // 模拟一个数据列表
    7. $dataList = [];
    8. for ($i = 1; $i <= 110; $i++) {
    9.     $city = [
    10.         'id' => $i,
    11.         'name' => 'City ' . $i,
    12.         'code' => 'CODE' . $i
    13.     ];
    14.     array_push($dataList, $city);
    15. }
    16. // 计算总数据条数和总页数
    17. $totalItems = count($dataList);
    18. $totalPages = ceil($totalItems / $pageSize);
    19. // 对页码进行有效性检查
    20. $page = max(min($page, $totalPages), 1);
    21. // 计算当前页的数据起止索引
    22. $startIndex = ($page - 1) * $pageSize;
    23. $endIndex = min($startIndex + $pageSize - 1, $totalItems - 1);
    24. // 提取当前页的数据
    25. $pagedData = array_slice($dataList, $startIndex, $pageSize);
    26. // 构建要返回的数据
    27. $response = [
    28.     'page' => $page,
    29.     'pageSize' => $pageSize,
    30.     'totalPages' => $totalPages,
    31.     'totalItems' => $totalItems,
    32.     'data' => array_map(function ($item) {
    33.         return $item;
    34.     }, $pagedData)
    35. ];
    36. // 将数据转换为 JSON 字符串
    37. $json = json_encode($response);
    38. // 输出 JSON 字符串
    39. echo $json;

    3.访问接口

    1).在本机访问接口

    2).在外网使用域名访问

    将city.php复制到ECS服务器配置的站点中

    购买ECS用宝塔部署LNMP可以看另一篇建站流程

  • 相关阅读:
    JDK8 — 17特性
    mybatis:关联关系映射
    图形库篇 | EasyX | 图像处理
    Linux安装Jenkins
    RabbitMQ - 04 - Fanout交换机 (广播)
    基于C语言的操作系统(银行家算法、处理机管理、可变式分区管理、分页存储管理、进程同步模拟、生产消费者问题、哲学家就餐)
    关于Python中install edge_tts记录
    成本高、落地难、见效慢,开源安全怎么办?
    仿网易云音乐小程序-uniapp
    [C/C++] 数据结构 LeetCode:用队列实现栈
  • 原文地址:https://blog.csdn.net/u012881779/article/details/134453039
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号