電商開發工程師面試題目
❶ 使用 Docker 建立方式(基本流程)
-
安裝 Docker:在本機安裝 Docker 與 Docker Compose。
-
建立專案目錄:例如
my-app/
。 -
撰寫 Dockerfile:描述應用的環境(PHP、Composer 等)。
-
建立 docker-compose.yml:
-
定義服務(如 PHP、Nginx、MySQL)。
-
-
建置與啟動容器:
-
進入容器操作:
❷ 如何 Docker 建立 Laravel 應用(簡易流程)
-
建立 Laravel 專案(可先用 Composer 或直接用 Laravel 官方 Docker image)。
-
建立
docker-compose.yml
: -
建立
Dockerfile
: -
啟動服務並安裝 Laravel:
❸ 什麼是 RESTful API?
-
RESTful API 是一種風格,用於設計 HTTP 介面,讓前後端透過 API 溝通。
-
常用動詞對應資源操作:
-
GET /posts
:取得所有貼文 -
POST /posts
:新增貼文 -
GET /posts/1
:取得貼文1 -
PUT /posts/1
:更新貼文1 -
DELETE /posts/1
:刪除貼文1
-
❹ RESTful API 如何在 Laravel 應用?
-
建立 Route:
-
建立 Controller:
-
撰寫邏輯:在
PostController
中實作 index, store, show, update, destroy 等方法。 -
回傳 JSON:
❺ Laravel insert
與 create
差異與情境?
方法 | insert | create |
---|---|---|
類型 | Query Builder 方法 | Eloquent ORM 方法 |
傳回值 | 無傳回值 | 回傳模型物件 |
資料驗證 | 不會驗證填充 (fillable) | 會驗證 $fillable 或 $guarded |
使用時機 | 批量插入、大量資料效能優先 | 常規單筆新增、有模型邏輯需求時 |
❻ Laravel ORM join
與 with
差異與情境?
方法 | join | with (Eager Loading) |
---|---|---|
類型 | SQL 層級的 join 查詢 | ORM 層級的關聯載入 |
效能 | 效能高(單次查詢) | 較方便、有模型資料結構 |
用途 | 沒有定義關聯,需手動 join | 已定義 Eloquent 關聯關係時使用 |
❼ Laravel Unit Test 如何避免測試時寫入資料庫?
-
使用 Database Transaction:
-
使用 Mock 或 Fake 模型或 Repository:
-
模擬資料邏輯,不實際寫入。
-
可以搭配 Laravel 的
Mockery
或 PHPUnit mock 工具。
-
❽ Laravel Queue 建立方式(簡易流程)
-
設定 .env(使用 database 或 redis 等):
-
建立 Queue Table(如使用 database):
-
建立 Job 類別:
-
派送 Job:
-
執行 Queue Worker: