As you can see in the docs, this is Laravel's magic :-)
https://laravel.com/docs/5.2/eloquent#defining-models (see Table Names)
If you want, you can manually set a different username
protected $table = 'my_table_name';
And to go a little further, so Laravel gets the name of the table in the base model, which you can find in /vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php
public function getTable() { if (isset($this->table)) { return $this->table; } return str_replace('\\', '', Str::snake(Str::plural(class_basename($this)))); }
source share