必须用 composer create-project 创建 ThinkPHP 项目,因为 composer require 只安装类库不生成项目结构和初始化文件,导致 Class 'think\App' not found 和 Command "run" is not defined 等错误。

必须用 composer create-project,不是 composer require;否则连 php think run 都执行不了,更别说访问首页。
为什么 composer require topthink/think 一定不行
这个命令只往 vendor/ 里塞一个类库包,不生成 app/、config/、public/index.php、think 命令脚本,也不执行初始化钩子(比如写默认 .env、清空 runtime/)。结果就是:
-
Class 'think\App' not found—— 自动加载找不到入口类 -
Command "run" is not defined——think命令根本没注册进vendor/bin/ - 手动补目录?容易漏
base.php或 PSR-4 映射错,越修越乱
composer create-project 的正确用法和版本控制
它拉的是完整项目模板,不是单个包。关键点在版本约束和目标目录:
- 装最新稳定版 TP6:
composer create-project topthink/think tp6 - 锁定 LTS 版本(推荐生产):
composer create-project "topthink/think:^6.1" tp6 - 指定小版本(如 v6.1.5):
composer create-project "topthink/think:6.1.5" tp6 - 别用
dev-master或6.x-dev—— 这些不是发布分支,CI 构建可能失败
执行后会自动创建 tp6/ 目录,并在里面跑完所有初始化脚本,包括生成 vendor/autoload.php 和权限设置。
安装后三件必须立刻验证的事
很多人以为命令跑完就结束了,其实刚起步最容易卡在这几步:
- 进到项目根目录(即含
think文件和vendor/的目录),运行php think version—— 必须输出v6.x.x,否则说明 autoload 没生效或装错了版本 - 检查
runtime/是否可写:Windows 下确保 IIS 或 Apache 运行账户有修改权限;Linux/macOS 执行chmod -R 755 runtime/,否则日志、缓存全失败 - 确认 Web 服务器 root 指向
public/,不是项目根目录 —— 否则路由 404,.env还可能被直接下载
国内网络下常见失败原因和应对
报 Could not find package topthink/think 或安装极慢,基本是镜像源问题:
- 先清缓存:
composer clear-cache - 临时切阿里云镜像:
composer config -g repo.packagist https://mirrors.aliyun.com/composer/ - 装完建议切回官方源:
composer config -g repo.packagist https://packagist.org,避免后续全局命令行为异常 - 如果
composer --version报错 command not found,说明 Composer 没进系统 PATH —— Windows 要加%USERPROFILE%\AppData\Roaming\Composer\vendor\bin到环境变量
PHP 版本和扩展比命令本身还关键:mbstring、openssl、pdo、json、curl 缺一不可,少一个都可能让 php think run 启动失败或页面空白无提示。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











