必须用composer create-project topthink/think tp6 --stability=stable --prefer-dist创建TP6项目,禁用require或ZIP手动安装,否则缺失public/index.php、php think命令及完整骨架;安装后须验证PHP 8.0环境、runtime/可写、Web服务器根目录指向public/,并用php think run启动内置服务确认欢迎页显示。

直接用 composer create-project topthink/think tp6 --stability=stable --prefer-dist,别用 composer require,也别手动下载 ZIP —— 后两者会导致 Class 'think\App' not found、public/index.php 缺失、php think 命令不可用等硬伤。
确认 PHP 8.0 环境是否真就绪
ThinkPHP6 支持 PHP 7.2.5+,但如果你已装了 PHP 8.0,得确保它不只是“能运行”,而是扩展和路径都到位:
-
php -v输出必须是PHP 8.0.x(不是 7.x 或 8.1+) -
php -m要看到mbstring、openssl、pdo、json、curl—— 少一个,create-project可能中途静默失败 -
php --ini查看加载的php.ini路径,确认没启用disable_functions里禁掉的函数(如exec、shell_exec),否则php think run启动失败 - Windows 用户常忽略:PHP 安装目录(含
php.exe)必须加入系统 PATH,否则composer找不到 PHP,报错Could not open input file: composer.phar
Composer 安装 TP6 必须用 create-project
composer require topthink/think 只拉核心包,不生成 app/、config/、public/、think 脚本 —— 这不是“少配 autoload”,是根本没项目骨架。TP6 是「框架即项目」结构,必须从模板起步。
- 正确命令:
composer create-project topthink/think tp6 --stability=stable --prefer-dist - 加
--prefer-dist强制走 ZIP 包,绕过 Git 克隆(国内访问git://或 GitHub HTTPS 经常卡在Cloning into '') - 想装指定小版本(如 v6.3.5):加
@v6.3.5,写成composer create-project topthink/think tp6 @v6.3.5 --prefer-dist - 若提示
Could not find package topthink/think,先执行composer clear-cache,再切阿里云镜像:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
安装后三件立刻要做的事
很多人跑完命令就去配 Nginx,结果访问 500 或空白页,问题基本出在这三处:
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
立即学习“PHP免费学习笔记(深入)”;
- 检查
tp6/public/index.php是否存在 —— 缺失说明create-project没执行完,删掉整个tp6目录重来 - 确认
tp6/runtime/目录可写(Windows 下右键 → 属性 → 安全 → 当前用户有“修改”权限;Linux/macOS 用chmod -R 755 runtime),否则日志、缓存、模板编译全失败 - Web 服务器 DocumentRoot 必须指向
tp6/public/,不是tp6/—— 指错了会 404,或更糟:把.env文件直接暴露给浏览器下载
验证是否真跑通:别配 Apache/Nginx,先用内置服务器
配 Web 服务器是后续步骤,第一步验证只用一条命令:
- 进项目根目录:
cd tp6 - 运行:
php think run(等价于php -S 127.0.0.1:8000 public/router.php) - 浏览器打开
http://127.0.0.1:8000,看到 ThinkPHP 欢迎页才算真正就绪 - 如果报
Command "run" is not defined,说明think命令没注册进自动加载 —— 大概率你误用了require而非create-project
最易被忽略的是:TP6 的 runtime/ 权限和 Web 服务器的 public/ 根路径,这两点不满足,哪怕代码完全正确,也会表现为“页面空白”或“500 错误但无日志”。


















