ThinkPHP必须用composer create-project初始化完整项目骨架,而非require核心包;否则缺public入口、app目录等导致Class 'think\App' not found或404。需确保PHP≥7.2.5、Composer配置阿里云镜像,并验证php -v与composer --version正常。

ThinkPHP 不是“装”出来的,而是用 composer create-project 初始化一个完整可运行项目。跳过这一步直接 require 框架核心,必然报错 Class 'think\App' not found 或访问 404——因为缺 public 入口、app 目录、think 命令脚本和默认路由。
基础环境准备
确保系统已就绪以下三项:
- PHP ≥ 7.2.5(推荐 PHP 8.2+,注意 ThinkPHP 8 兼容 PHP 8.5.5)
- Composer 已安装并配置阿里云镜像:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 终端能正常执行
php -v和composer --version
创建标准项目结构
在空目录中执行(不要在已有 Laravel/Symfony 项目里硬加):
- 最新版:
composer create-project topthink/think myapp - 指定版本(如 TP8):
composer create-project topthink/think myapp@8.0 - 项目生成后,确认根目录含
app/、config/、public/、vendor/等标准子目录
启动与验证开发服务
进入项目根目录后直接运行:
立即学习“PHP免费学习笔记(深入)”;
-
php think run—— 自动启用内置服务器,默认监听http://127.0.0.1:8000 - 浏览器打开该地址,看到 “ThinkPHP V8.x” 欢迎页即成功
- 若报错 “Command not found”,检查是否在项目根目录执行;若提示找不到
bootstrap.php,说明项目结构不完整,需重新 create-project
关键配置要点
别改 config 文件写密码——优先用 .env:
-
.env在 create-project 时自动生成,但所有项默认被注释;取消注释并填写,例如:APP_DEBUG=trueDB_HOST=127.0.0.1DB_NAME=thinkphpDB_USER=rootDB_PASS= - Web 服务器必须指向
public/目录:Apache 要设DocumentRoot为/path/to/myapp/public并开启AllowOverride All;Nginx 需配root /path/to/myapp/public;和try_files $uri $uri/ /index.php?$query_string; - 敏感文件如
.env和config/若被外部直接访问,说明 Web 根目录设错了,务必修正



















