webman框架采用标准化分层目录结构,核心包括app(业务代码)、config(配置文件)、public(入口与静态资源)、runtime(运行时文件)、vendor(依赖库);app下须含controller和middleware子目录,public中index.php为启动入口。

如果您刚接触Webman框架,面对项目文件夹不知从何入手,则很可能是因未掌握其标准化的目录组织逻辑。以下是理解Webman入门目录结构的关键方法:
一、识别核心目录及其职责
Webman采用清晰分层的目录结构,每个主目录承担明确职能,避免功能混杂。掌握各目录定位是快速上手的第一步。
1、进入项目根目录,确认是否存在 app/ 目录——该目录存放全部业务代码,包含控制器、模型、中间件等子模块。
2、检查 config/ 目录是否存在——所有运行时配置(如数据库、路由、中间件启用状态)均集中在此,以PHP数组形式定义。
3、定位 public/ 目录——这是Web服务器唯一可公开访问的入口,内含 index.php 启动文件及静态资源(css、js、images)。
4、观察 app/controller/ 是否存在——所有HTTP请求处理逻辑均在此编写,文件名需与类名一致,且继承 Webman\Controller。
二、验证典型子目录层级关系
Webman默认不强制嵌套过深,但支持按功能进一步拆分。验证子目录是否符合官方约定,可避免路由加载失败或自动加载异常。
1、在 app/ 下检查是否有 model/ 子目录——若存在,应存放与数据库交互相关的类,命名空间需匹配路径(如 app\model\User 对应 app/model/User.php)。
2、查看 app/middleware/ 是否存在——自定义中间件类应置于该目录,且类名需以 Middleware 结尾(如 AuthMiddleware)。
Webman 2.2.0版本强化了 TCP/UDP 服务支持,优化路由组管理,并增强异步任务处理能力。结合协程与连接池技术,Webman 能轻松应对高并发场景,适用于网站、接口服务、即时通讯、物联网及游戏开发,兼具高性能、灵活扩展与稳定可靠,是多场景 PHP 服务开发的理想选择。
3、确认 app/view/ 是否存在——视图模板文件(.html 或 .php)存放于此,路径层级对应模板调用路径(如 app/view/user/profile.html 通过 $this->view('user/profile') 渲染)。
三、通过命令行工具辅助识别结构
Webman官方提供了控制台命令,可快速生成符合规范的目录与文件,同时反向验证当前结构是否被框架识别。
1、在项目根目录执行 php console/webman module:create demo ——命令将自动创建 app/demo/ 模块目录,并初始化 controller、model、view、config 子结构。
2、运行 php console/webman route:list ——若输出完整路由表,说明 config/ 中的路由配置已被正确加载,间接验证 config 目录有效性。
3、执行 php console/webman app:status ——该命令会检测 app 目录下关键子目录(controller、model、middleware)是否存在且可读,输出缺失项提示。
四、对照标准结构手动校验
当项目由他人交付或经多次修改后,目录可能偏离原始结构。此时应以官方默认结构为基准逐项比对,确保无遗漏或错位。
1、确认根目录下存在以下5个必需目录:app/、config/、public/、runtime/、vendor/。
2、检查 app/ 下是否至少包含 controller/ 和 middleware/ ——二者为框架运行最低依赖,缺一不可。
3、核对 public/index.php 文件头部是否包含 require __DIR__.'/../vendor/autoload.php'; 及 require __DIR__.'/../app/bootstrap.php'; ——此为启动链路关键引用,路径错误将导致白屏。










