如何使用 PHP 建立 RESTful API?建立專案並配置路由以處理客戶端請求。建立控制器來處理路由中的方法。透過映射物件關係將實體映射到資料庫表。運行 API 並處理身份驗證、資料驗證和錯誤處理。
如何使用PHP 建立RESTful API
簡介
##RESTful API 是一種網路應用程式接口,它遵循REST(Representational State Transfer)原則。 REST API 允許客戶端與伺服器交互,以取得、建立、更新或刪除資料。使用 PHP 建立 RESTful API 非常簡單,本文將逐步引導你完成這個過程。先決條件
建立專案
首先,使用Composer 建立一個新專案:composer create-project symfony/skeleton my-api
設定路由##在
config/routes.yaml 中定義路由,用於處理來自客戶端的請求:<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:yaml;toolbar:false;'># config/routes.yaml
users:
path: /users
methods: [GET, POST]
controller: App\Controller\UserController</pre><div class="contentsignin">登入後複製</div></div>
建立控制器來處理路由中的方法:
# src/Controller/UserController.php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; class UserController extends AbstractController { /** * @Route("/users", methods={"GET"}) */ public function index(): Response { // 获取用户数据 $users = $this->getDoctrine() ->getRepository(User::class) ->findAll(); // 返回 JSON 响应 return $this->json($users); } }
以下是一個建構簡單的使用者API 的實戰案例:
# src/Entity/User.php namespace App\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity */ class User { /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=255) */ private $name; // getters and setters omitted for brevity }
使用Doctrine ORM 將使用者實體對應到資料庫表格:
# config/packages/doctrine.yaml doctrine: dbal: driver: pdo_mysql url: '%env(DATABASE_URL)%' orm: auto_generate_proxy_classes: true naming_strategy: doctrine.orm.naming_strategy.underscore
使用下列命令執行API:
php bin/console server:run
現在,你可以在瀏覽器中存取
/users 來取得使用者資料。
以上是如何使用 PHP 建立 RESTful API?的詳細內容。更多資訊請關注PHP中文網其他相關文章!