If you use Laravel v8.78 and MySQL 8.0.23 and onwards, you can define choosen columns as "invisible". Columns which are define as invisible
will be hidden from the select *
statements.
However, to do so, we must use a invisible()
method in the migration, something like that:
1use Illuminate\Database\Schema\Blueprint;2use Illuminate\Support\Facades\Schema;3 4Schema::table('table', function (Blueprint $table) {5 $table->string('secret')->nullable()->invisible();6});
That's it! This will make chosen column hidden from select *
statement.
Tip given by @CatS0up