Notice: Only MySQL
If you're adding a new column to the existing table, it doesn't necessarily have to become the last in the list. You can specify after which column it should be created:
Schema::table('users', function (Blueprint $table) { $table->string('phone')->after('email');});
If you're adding a new column to the existing table, it doesn't necessarily have to become the last in the list. You can specify before which column it should be created:
Schema::table('users', function (Blueprint $table) { $table->string('phone')->before('created_at');});
If you want your column to be the first in your table , then use the first method.
Schema::table('users', function (Blueprint $table) { $table->string('uuid')->first();});
Also the after() method can now be used to add multiple fields.
Schema::table('users', function (Blueprint $table) { $table->after('remember_token', function ($table){ $table->string('card_brand')->nullable(); $table->string('card_last_four', 4)->nullable(); });});
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses
[NEW] Building a Typical Laravel SaaS
10 lessons
1 h 27 min
Laravel Coding with AI Agents: Cursor, Claude Code, Codex
5 lessons
1 h 01 min
Laravel 12 For Beginners: Your First Project
15 lessons
1 h 32 min