核心規(guī)矩只有三條:
GET 查、POST 增、PUT 改、DELETE 刪 環(huán)境 OK 后,用「開發(fā)任務(wù)管理系統(tǒng)KPI」給團(tuán)隊(duì)定個(gè)“接口響應(yīng)時(shí)間 ≤ 200 ms”的指標(biāo),績效可衡量,上線不背鍋 ??!
/users、訂單 /orders … GET /users 列表、POST /users 新建 … 規(guī)劃完,順手「代碼文檔生成器」一鍵輸出 Swagger 文檔,UI 友好,老板點(diǎn)贊 ??!
原生寫法先跑通,再換框架。下方代碼已修正原文 > 亂碼,復(fù)制即可運(yùn)行 ?
<?php
// 1. 連接數(shù)據(jù)庫
$pdo = new PDO('mysql:host=localhost;dbname=demo;charset=utf8mb4', 'root', '');
// 2. 路由分發(fā)
$method = $_SERVER['REQUEST_METHOD'];
$path = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
// 3. 簡單 GET /users
if ($method === 'GET' && $path === '/users') {
$stmt = $pdo->query('SELECT id,name,email FROM users');
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
header('Content-Type: application/json');
echo json_encode($rows, JSON_UNESCAPED_UNICODE);
exit;
}
/* 其他路由同理… */
想再懶一點(diǎn)?「代碼生成」30 秒給你生成完整 CRUD 模板,接著「代碼優(yōu)化」自動(dòng)把 N+1 查詢、重復(fù)連接池全部修好,性能翻倍 ??!
| 框架 | 特點(diǎn) | 適用場景 |
|---|---|---|
| Slim | 輕量、路由優(yōu)雅 | 微型服務(wù)、原型驗(yàn)證 |
| Laravel | ORM、隊(duì)列、廣播全家桶 | 復(fù)雜業(yè)務(wù)、企業(yè)級(jí) |
| Lumen | Laravel 親弟弟,專為 API 瘦身 | 高性能接口聚合 |
裝個(gè) Slim 只需 2 行命令 ??
composer require slim/slim:"^4.0"
composer require slim/psr7
寫完路由別忘了「代碼審查助手」過一遍:JWT 是否雙判?SQL 是否預(yù)編譯?安全分直接拉滿 ??!
把上述檢查點(diǎn)寫進(jìn)「開發(fā)任務(wù)管理系統(tǒng)KPI」——“高危漏洞修復(fù)時(shí)長 ≤ 1 個(gè)工作日”,目標(biāo)量化,安全不背鍋 ??!
用 PHP 構(gòu)建 RESTful API 不再是“刀耕火種”:
規(guī)劃→框架→安全→文檔,一條龍 AI 提示詞保駕護(hù)航,開發(fā)效率直接 ×2 ??!
原文鏈接: https://echodevelopment.io/blog/building-restful-apis-with-php-a-comprehensive-guide/