您的当前位置:首页>全部文章>文章详情

【Webman+MySQL教程一】安装 Webman,跑通第一个 Hello World

果子发表于:2026-10-04 13:33:30浏览:2次TAG: #webman #PHP #MySql #教程

系列说明

本系列共 5 篇,从零开始用一个「班级学生管理」小例子,完整走一遍 Webman + MySQL 的开发流程:安装、路由、数据库连接、ORM、接口开发。每篇都可独立运行验证,建议按顺序阅读。

  • 第 1 篇(本文):安装 Webman 并跑通第一个 Hello World
  • 第 2 篇:路由与控制器
  • 第 3 篇:连接 MySQL(webman/database 配置)
  • 第 4 篇:ORM 模型与增删改查
  • 第 5 篇:开发完整的 JSON 接口 + 验证

一、Webman 是什么

Webman 是基于 Workerman 的高性能 PHP HTTP 服务框架。与传统 PHP-FPM 不同,它以常驻内存方式运行:进程启动后代码加载一次,后续请求直接复用,所以并发能力远超 PHP-FPM,官方基准测试可达十万级 QPS。

代价是:修改代码后需要重启进程才生效(开发期可以开启热重载),并且要注意避免使用会跨请求残留的全局状态。

二、环境要求

  • PHP >= 8.0(本文在 PHP 8.2 + Windows 10 验证,Linux/macOS 同样适用)
  • Composer 2.x
  • MySQL 8.0(第 3 篇开始使用)

检查版本:

php -v
composer -V

三、安装项目

使用官方骨架创建项目:

composer create-project workerman/webman webman-demo
cd webman-demo

目录结构里最常打交道的几个:

webman-demo/
├── app/
│   ├── controller/   # 控制器
│   ├── model/        # 模型(第 4 篇用到)
│   └── functions.php # 全局函数与辅助配置
├── config/
│   ├── route.php     # 路由定义
│   ├── webman.php    # webman 核心配置
│   ├── server.php    # 进程数等运行参数
│   └── database.php  # 数据库配置(需安装 webman/database)
├── public/           # 静态资源
└── start.php         # 启动入口

四、启动服务

Linux/macOS:

php start.php start

Windows 下 Workerman 有专门适配,但 start.php 直接运行可能提示事件循环问题,最简单的方式是用内置命令:

php windows.php

看到监听信息后,浏览器访问:

http://127.0.0.1:8787

默认会输出 Hello Webman.,说明框架已跑通。

五、写第一个接口

新建 app/controller/HelloController.php:

<?php
namespace app\controller;

use support\Request;

class HelloController
{
    public function index(Request $request)
    {
        return 'Hello, 果子的博客';
    }

    public function json(Request $request)
    {
        return json(['code' => 0, 'msg' => 'ok', 'data' => ['name' => 'webman']]);
    }
}

在 config/route.php 中注册路由:

use support\\Router;
use app\\controller\\HelloController;

Route::add('/hello', [HelloController::class, 'index']);
Route::add('/hello/json', [HelloController::class, 'json']);

重启服务(Windows 下直接 Ctrl+C 后再 php windows.php),访问 /hello 和 /hello/json 即可看到纯文本与 JSON 响应。

六、开启开发热重载

每次改代码都手动重启很烦。编辑 config/webman.php,把进程数设为 1 并开启监视:

'reload' => true,

或在 config/server.php 中确认:

'count' => 1, // Windows 开发环境建议 1 个进程

之后修改控制器代码保存,控制台会打印 reload 日志,无需手动重启。

小结

本篇完成了 Webman 的安装、启动与第一个 Hello World 接口。下一篇将讲透路由与控制器:GET/POST 参数获取、路由分组、中间件雏形,为后面连接 MySQL 做好准备。