PHP 8.3 完全兼容 Laravel 10,但需验证扩展真实启用、配置国内 Composer 镜像、清理缓存三步缺一不可;执行 php -m 检查 mbstring/openssl/pdo 等 13 项扩展,用 brew install php@8.3 或 apt install php8.3-intl 补全,设阿里云镜像后运行 COMPOSER_MEMORY_LIMIT=-1 composer create-project laravel/laravel:^10.0 myapp,再执行 key:generate、config:clear、cache:clear 并 php artisan serve 验证。

PHP 8.3 完全兼容 Laravel 10,但安装前需确认环境真实就绪,不能只看 php -v 显示版本就认为万事大吉。关键在扩展是否加载、镜像是否生效、缓存是否清理——这三步漏掉任意一个,composer create-project 就可能卡住或启动后报 500 错误。
验证 PHP 8.3 真实启用必需扩展
Laravel 10 要求以下扩展全部启用(缺一不可):mbstring、openssl、pdo、tokenizer、xml、ctype、json、filter、hash、fileinfo、dom、session。intl 和 bcmath 虽非强制,但项目几乎必用,建议一并检查。
- 运行命令查看已启用模块:
php -m | grep -E "(mbstring|openssl|pdo|tokenizer|xml|ctype|json|filter|hash|fileinfo|dom|session|intl|bcmath)" - 若某项无输出(如 macOS 常缺 intl),Homebrew 用户执行:
brew install php@8.3(自动带全扩展);Ubuntu/Debian 执行:sudo apt install php8.3-intl php8.3-bcmath - 务必执行
php --ini查出实际加载的php.ini路径,打开文件确认对应extension=行未被注释(如extension=mbstring)
配置国内 Composer 镜像并创建 Laravel 10 项目
默认源在 PHP 8.3 环境下仍易因网络问题卡在 Installing dependencies 或报 zlib_decode(): data error。必须显式指定版本 + 切换镜像。
- 全局设置阿里云镜像:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 创建项目时锁定 Laravel 10 LTS:
COMPOSER_MEMORY_LIMIT=-1 composer create-project laravel/laravel:^10.0 myapp - 若仍失败,先清 Composer 缓存:
rm -rf ~/.composer/cache(macOS/Linux)或del /s /q %COMPOSER_HOME%\cache(Windows)
生成密钥、清缓存、启动服务
.env 修改或首次安装后,Laravel 不会自动重读配置——所有变更都依赖缓存。跳过这步,APP_DEBUG=true 也看不到错误详情,DB_HOST 改成 127.0.0.1 也可能连不上。
立即学习“PHP免费学习笔记(深入)”;
- 进入项目目录:
cd myapp - 生成 APP_KEY:
php artisan key:generate - 清除配置与缓存:
php artisan config:clear && php artisan cache:clear - 启动服务:
php artisan serve(默认 http://127.0.0.1:8000) - 浏览器访问,看到 Laravel 欢迎页即表示安装测试成功
快速验证是否真跑通(可选)
欢迎页只是前端静态响应,不代表框架核心功能正常。加一步简单验证更稳妥:
- 执行
php artisan about—— 应显示 Laravel 版本、PHP 版本、已加载扩展列表 - 临时创建一个路由测试响应:
php artisan make:controller TestController,然后在routes/web.php中添加Route::get('/test', [TestController::class, 'index']);,并在控制器中返回return 'OK'; - 访问
http://127.0.0.1:8000/test,能返回 OK 即说明路由、控制器、服务容器均工作正常



















