应使用 composer require openai-php/client 安装,该 sdk 由 spiral 团队维护,兼容 php ≥8.0(含 8.4),官方未发布 php sdk,其他 openai/* 包已归档或失效。

直接用 composer require openai-php/client 安装即可,PHP 8.4 完全兼容。
这个包由 Spiral 团队维护,是当前最主流、持续更新、文档清晰的 OpenAI PHP SDK。OpenAI 官方并未发布 PHP 版本的 SDK,网上搜到的 openai/openai、openai/api、openai/sdk 等包大多已归档或停止维护,装了也调不通。
✅ 正确安装命令(终端执行)
- 进入项目根目录后运行:
composer require openai-php/client
Composer 会自动拉取依赖(如 php-http/guzzle7-adapter 和 psr/http-client),无需手动干预。
注意:PHP 8.4 是支持的,该 SDK 要求 PHP ≥ 8.0,8.4 属于明确兼容范围。
⚠️ 常见错误避坑
别装错包名
❌composer require openai/api
❌composer require openai/openai
❌composer require openai/sdk
这些不是活跃维护的 SDK,容易报Class not found或401 Unauthorized。装完检查 vendor 目录
成功后应存在vendor/openai-php/client,否则说明安装失败(可能是网络或镜像问题)。-
国内用户可换镜像加速
composer config -g repo.packagist composer https://developer.aliyun.com/composer
? 初始化客户端的关键点
-
apiKey必须是原始字符串(如sk-xxx),不能带Bearer前缀 - 推荐从环境变量读取,避免硬编码:
$client = \OpenAI\Client::builder() ->withApiKey($_ENV['OPENAI_API_KEY']) ->build(); -
.env文件需加入.gitignore,防止密钥泄露。
? 调用时注意参数格式
-
messages必须是 PHP 关联数组,不是 JSON 字符串:$response = $client->chat()->create([ 'model' => 'gpt-4o', 'messages' => [ ['role' => 'user', 'content' => '你好'], ], ]);❌ 错误写法:传入 JSON 字符串
'{"messages":[...]}'
不复杂但容易忽略细节。只要包名对、密钥对、参数结构对,PHP 8.4 下跑起来很稳。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











