AI 现在火得不行,ChatGPT 这些工具让我们开发者能很轻松地给应用加上智能功能。如果你在用 PHP,想让自己的项目也能"聊天"、"思考",这篇文章就手把手教你怎么通过 OpenAI 的 API 把 ChatGPT 接入 PHP 应用。
PHP 跑着全世界一大半的网站,从小博客到大公司的系统都在用。现在给 PHP 加上 ChatGPT,你的应用马上就能有这些酷炫功能:
不管你做的是公司内部工具还是对外的产品,ChatGPT 都能让你的应用瞬间智能化。
撸代码之前,先检查一下你有没有这些东西:
注册登录 OpenAI 后,去拿个 API key。后面 PHP 调用接口都要用这个 key 来认证。
咱们先来个最简单的例子,看看 PHP 怎么给 ChatGPT 发消息并拿到回复。
<?php
$apiKey = 'YOUR_OPENAI_API_KEY';
$data = [
"model" => "gpt-4", // 或 "gpt-3.5-turbo"
"messages" => [
["role" => "system", "content" => "你是一个有用的助手。"],
["role" => "user", "content" => "法国的首都是什么?"]
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.openai.com/v1/chat/completions");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"Authorization: Bearer $apiKey"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
echo $result['choices'][0]['message']['content'];
?>
这段代码做了什么:
说了这么多理论,现在看看实际项目里能怎么玩:
用途:用户有问题直接问,AI 秒回答,不用真人客服天天回复重复问题。
代码示例:
<?php
$userMessage = $_POST['message'];
$data = [
"model" => "gpt-4",
"messages" => [
["role" => "system", "content" => "你是在线电子产品商店的客服代表。请简洁而有用地回答问题。"],
["role" => "user", "content" => $userMessage]
]
];
前端配合:网页上弄个聊天窗口(HTML + JS),用户发消息就 POST 到这个 PHP 文件。
用途:让 AI 帮你写营销文案、博客大纲、产品介绍,再也不用抓破脑袋想文案。
代码示例:
<?php
$productName = "EcoSmart可重复使用水瓶";
$descriptionGoal = "生成SEO友好的产品描述。";
$data = [
"model" => "gpt-4",
"messages" => [
["role" => "system", "content" => "你是一位撰写引人注目的电商产品描述的内容营销专家。"],
["role" => "user", "content" => "为以下产品写一个100字的描述:$productName"]
]
];
用途:用户说个大概,AI 帮忙写详细的简历、求职信什么的,省事儿。
代码示例:
<?php
$userInput = "拥有5年React和Vue.js经验的前端开发工程师";
$data = [
"model" => "gpt-4",
"messages" => [
["role" => "system", "content" => "你是一位职业顾问,帮助用户撰写专业简历。"],
["role" => "user", "content" => "基于这个总结,创建一个2句话的个人简介:$userInput"]
]
];
效果:生成的内容直接用 JS 填到表单里,用户一键搞定。
用途:用户用大白话问问题,AI 从你的文档库里找答案,比关键词搜索聪明多了。
怎么搞:
消息示例:
<?php
// 用户询问:"如何重置我的密码?"
$context = "文档:要重置密码,请转到设置页面并点击'忘记密码'。";
$userQuestion = "如何重置我的密码?";
$data = [
"model" => "gpt-4",
"messages" => [
["role" => "system", "content" => "你根据公司文档回答问题。"],
["role" => "user", "content" => "文档:$context \n\n问题:$userQuestion"]
]
];
用途:看不懂代码?有 bug?想要 AI 帮你写代码?直接问就行。
代码示例:
<?php
$userCode = "function add(a, b) { return a + b; }";
$data = [
"model" => "gpt-4",
"messages" => [
["role" => "system", "content" => "你是一位用简单术语解释代码的专业软件工程师。"],
["role" => "user", "content" => "解释这个JavaScript函数的作用:\n$userCode"]
]
];
还能这样玩:
role: assistant
让 AI 提供代码优化建议PHP 接入 ChatGPT 其实没想象中那么复杂,几行代码就能让你的应用变聪明。用户体验立马上一个台阶,工作效率也能提升不少。
现在 AI 这么火,不用就亏了。PHP + OpenAI 这个组合,绝对是未来 Web 开发的趋势。