0

0

composer怎么安装ThinkPHP8_composer怎么快速上手开发【步骤】

冰火之心

冰火之心

发布时间:2026-03-13 17:26:31

|

242人浏览过

|

来源于php中文网

原创

Composer 安装 ThinkPHP 8 需满足 PHP ≥ 8.1 并启用 curl、mbstring、json、openssl 扩展,使用带 --stability=stable 和 --remove-vcs 参数的 create-project 命令,Web 服务器必须指向 public/ 目录并正确配置路由引导文件 router.php。

composer怎么安装thinkphp8_composer怎么快速上手开发【步骤】

Composer 安装 ThinkPHP 8 不是“一键安装”就能开干的事——它必须基于 PHP 环境、扩展和权限的正确组合,否则会卡在 composer create-project 报错或安装后 index.php 白屏。

PHP 版本和扩展没配对,create-project 直接失败

ThinkPHP 8 要求 PHP ≥ 8.1,且必须启用 curlmbstringjsonopenssl 这四个扩展。Windows 用户常漏掉 php.ini 中的 extension=openssl(默认被注释);Linux 用户用 apt install php-curl php-mbstring 后,还得确认 CLI 和 Web SAPI 用的是同一份配置(php -vphpinfo() 对比 Loaded Configuration File)。

  • 运行 php -m | grep -E "curl|mbstring|json|openssl" 确认 CLI 下已加载
  • php -i | grep "Configuration File" 查 CLI 配置路径,别只改了 Apache 的 php.ini
  • 如果报 Could not parse version constraint ^8.0: Invalid version string "^8.0",说明 Composer 版本太老,升级到 composer v2.5+:运行 composer self-update

composer create-project 命令要加参数才干净

直接跑 composer create-project topthink/think 会拉最新稳定版(可能是 TP8.x),但默认不带 public 入口目录结构,也不初始化 Git,容易误删核心文件。推荐用带参数的写法:

composer create-project topthink/think tp8 --stability=stable --remove-vcs
  • --stability=stable 防止意外拉到 dev-main 分支(不稳定、文档不同步)
  • --remove-vcs 清掉 vendor 里所有 .git,避免后续项目 git push 冲突
  • 别用 -n(no-interaction)跳过交互,TP8 初始化时会生成 .env 并提示设置 APP_DEBUG,跳过会导致调试关闭、错误不显示

Web 服务器入口路径必须指向 public/,否则 404 或白屏

TP8 不再允许根目录直访 index.php,所有请求必须经由 public/index.php。Apache 默认 DocumentRoot 是项目根目录,Nginx 则常配错 root 指向。

Rose.ai
Rose.ai

一个云数据平台,帮助用户发现、可视化数据

下载

立即学习PHP免费学习笔记(深入)”;

  • Apache:把 DocumentRoot 改成 /path/to/tp8/public,并确保 .htaccess 可读(AllowOverride All
  • Nginx:root 必须设为 /path/to/tp8/public,不是 /path/to/tp8;重写规则里 try_files $uri $uri/ /index.php?$query_string; 才有效
  • 本地开发用 php -S:进 public/ 目录再执行 php -S localhost:8000 router.php,别在项目根目录跑

.env 文件权限和内容影响调试与数据库连接

TP8 启动时优先读 .env,但若文件不可读(如 Linux 下权限为 600 且 Web 用户非文件所有者),就会静默 fallback 到默认配置——表现为数据库连不上、APP_DEBUG 关闭、路由不生效。

  • .env 文件权限建议 644,确保 Web 服务器用户(如 www-data_www)有读取权
  • 修改 APP_DEBUG=true 后,必须清空 runtime/cache/runtime/container/,否则旧缓存会屏蔽新配置
  • 数据库配置写 DB_HOST=127.0.0.1,别用 localhost(MySQL 会走 socket,TP8 PDO 默认不兼容)

最常被忽略的是:TP8 的 router.php 是单入口路由引导文件,它不在 index.php 里硬编码,而是由 Web 服务器显式调用。这意味着哪怕代码没错,只要服务器没按这个约定转发请求,就永远看不到 “Hello World”。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
composer是什么插件
composer是什么插件

Composer是一个PHP的依赖管理工具,它可以帮助开发者在PHP项目中管理和安装依赖的库文件。Composer通过一个中央化的存储库来管理所有的依赖库文件,这个存储库包含了各种可用的依赖库的信息和版本信息。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

162

2023.12.25

mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

686

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

513

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

287

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

519

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

267

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

392

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

542

2023.08.11

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

26

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
第二十四期_PHP8编程
第二十四期_PHP8编程

共86课时 | 3.5万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 2.6万人学习

第二十三期_PHP编程
第二十三期_PHP编程

共93课时 | 7.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号