正确做法是执行composer create-project topthink/think tp6-demo创建项目,不可用require;需确认php≥7.2.5、composer可用、镜像源正常;安装后验证public/index.php和vendor/autoload.php存在、runtime/可写、php think version可执行,并配置好utf-8无bom的.env文件。

直接用 composer create-project 创建项目,别 require
ThinkPHP 6 是「框架即项目」结构,topthink/think 是一个项目模板包,不是普通库。用 composer require topthink/think 只会把核心代码放进 vendor/,缺 app/、public/index.php、think 命令脚本等关键文件,后续必然报 Class 'think\App' not found 或 Failed opening required 'base.php'。
正确做法只有一条命令:
composer create-project topthink/think tp6-demo
其中:tp6-demo 是你要创建的目录名;不加版本号时默认拉取最新稳定版(当前是 v6.3.*);如需指定旧版,写全版本号,例如:topthink/think@v6.0.13。
安装前必须确认的三件事
很多人执行完命令就去访问,结果白屏或 500,问题往往出在环境没对齐:
- PHP 版本 ≥ 7.2.5,且已启用
mbstring、openssl、pdo、json扩展(运行php -m | grep -E 'mbstring|openssl|pdo|json'检查) - Composer 已全局可用:
composer --version能输出版本号;Windows 用户常因没加 PATH 导致命令不可用 - 国内网络建议先切镜像源:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/;若提示Could not find package,先composer clear-cache
装完立刻验证的三个关键点
生成目录不等于能跑通。进 tp6-demo 后马上检查:
-
public/index.php和vendor/autoload.php必须存在 —— 缺任一文件说明安装中断或镜像损坏 -
runtime/目录必须可写(Linux/macOS:执行chmod -R 755 runtime;Windows 注意 IIS 或 PHP-CGI 进程用户权限) - 运行
php think version,输出应为v6.x.x;若提示Command "version" is not defined,说明think命令未注册进自动加载,基本可断定没走create-project流程
.env 文件不配,TP6 就算跑起来也“哑火”
新项目生成后,默认没有 .env,框架会静默 fallback 到内置默认值 —— 导致 APP_DEBUG=false、数据库参数为空、路由失效,你改了代码却看不到效果,还以为是代码问题。
最小可用配置(保存为项目根目录下的 .env,注意 UTF-8 无 BOM):
APP_DEBUG = true APP_ENV = local DATABASE_HOST = 127.0.0.1 DATABASE_PORT = 3306 DATABASE_NAME = your_db_name DATABASE_USER = root DATABASE_PASS =
特别注意:DATABASE_PASS 即使为空也必须显式写出,否则框架解析时报 Undefined index: password;Windows 下用记事本保存时务必选「UTF-8 无 BOM」,否则 php think 直接退出不报错。
真正容易被忽略的是 .env 加载时机和权限耦合:它必须在第一次请求前就存在且可读,且 runtime/ 可写,否则错误日志根本写不进去,你连为什么失败都不知道。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











