必须用 composer create-project,因tp6骨架与autoload强绑定,仅此命令能注入psr-4映射并拉取含完整入口的topthink/think包;其他方式会导致class not found或白屏。

composer create-project 是唯一正确入口,其他方式(如下载 ZIP、composer install 空目录)必然失败。
为什么必须用 create-project 而不是 install 或手动解压
TP6 的骨架项目(skeleton)和自动加载逻辑是强绑定的:vendor/autoload.php 依赖 composer.json 中预设的 PSR-4 映射(如 "app\": "app/"),而这个映射只在 create-project 过程中由官方 skeleton 注入。直接 clone GitHub 仓库或解压源码,vendor/ 为空、autoload.php 不含框架类路径,运行时立刻报 Class 'thinkApp' not found。
-
create-project会自动拉取topthink/think包(非topthink/framework),它包含完整入口结构、public/index.php、默认.env和build.php -
composer install在空目录下直接报错:No composer.json present;即使你补上composer.json,也缺 skeleton 的目录初始化逻辑 - Windows 下双击 ZIP 解压后打开
public/index.php,浏览器只会显示空白或 PHP 解析错误——因为没走think serve的路由引导,也没加载环境配置
安装命令与版本控制要点
TP6 最后稳定版是 6.3.10,当前(2026 年 3 月)composer create-project topthink/think 默认拉取的是 TP8,必须显式锁版本。
- 装最新 TP6:
composer create-project topthink/think tp6 "6.*" - 装指定小版本(推荐用于生产):
composer create-project topthink/think tp6 "6.3.10" - 若提示
Could not find package,大概率是镜像源失效,临时切回官方源:composer config -g repo.packagist composer https://packagist.org - 不要用
=6.0.x-dev这类不稳定标识,dev 分支无正式发布保障,CI 构建可能失败
装完三件套:不执行就跑不起来
骨架生成 ≠ 可运行。以下三步跳过任意一个,php think serve 都会报错或白屏。
- 改
.env:把根目录下.example.env重命名为.env(Windows 资源管理器需显示隐藏扩展名,否则易误存为.env.txt);确认APP_DEBUG = true,否则错误全被吞掉 - 检查
runtime/目录可写:TP6 日志、缓存全写这里,Windows 一般没问题,但若用 WSL 或 Docker 卷挂载,需chmod -R 777 runtime - 启动必须用命令行:
cd tp6 && php think serve(不是php public/index.php,也不是双击打开);访问http://127.0.0.1:8000看欢迎页才算真正通了
常见报错直连原因
遇到这些提示,基本对应某个实操环节漏掉了:
立即学习“PHP免费学习笔记(深入)”;
-
Class 'thinkConsole' not found→ 没在项目根目录运行php think serve,或者当前目录下没有vendor/autoload.php(说明create-project根本没成功) - 空白页 + 无任何输出 →
APP_DEBUG = false且runtime/log/被禁写,立刻改.env并清空runtime/log/下所有文件 -
ParseError: syntax error, unexpected token "string"→ 你在 PHP 7.4 环境下强行装了 TP8,但命令里没锁"6.*",导致 Composer 自动选了不兼容版本
多应用、扩展包、数据库配置这些都建立在“能跑通欢迎页”基础上,别急着配 database.php,先让 think serve 吐出那句 “Welcome to ThinkPHP”。











