Rumah >pembangunan bahagian belakang >tutorial php >Menukar Model Laravel ke JSON untuk Respons API
<!-- Syntax highlighted by torchlight.dev -->// Basic usage of toJson() $user = User::find(1); return $user->toJson(); // With JSON formatting options return $user->toJson(JSON_PRETTY_PRINT);mari kita meneroka contoh praktikal sistem tindak balas API menggunakan tojson ():
Kaedah Tojson () Laravel Laravel menyediakan cara yang cekap untuk menukar model ke JSON, sambil menawarkan fleksibiliti untuk menyesuaikan output melalui atribut dan hubungan model.
<!-- Syntax highlighted by torchlight.dev --><?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Article extends Model { protected $appends = ['reading_time']; protected $hidden = ['internal_notes']; public function author() { return $this->belongsTo(User::class); } public function comments() { return $this->hasMany(Comment::class); } public function getReadingTimeAttribute() { return ceil(str_word_count($this->content) / 200); } public function toArray() { return [ 'id' => $this->id, 'title' => $this->title, 'content' => $this->content, 'author' => $this->author->name, 'reading_time' => $this->reading_time, 'comments_count' => $this->comments()->count(), 'created_at' => $this->created_at->toDateTimeString(), 'updated_at' => $this->updated_at->toDateTimeString(), ]; } } // In your controller class ArticleController extends Controller { public function show($id) { $article = Article::with(['author', 'comments.user'])->findOrFail($id); return $article->toJson(); } public function index() { $articles = Article::with('author')->get(); return response()->json($articles); // Implicit conversion } }
Atas ialah kandungan terperinci Menukar Model Laravel ke JSON untuk Respons API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!