I am using codeigniter, and have found myself in a similar situation where I have repeated Model methods.I am creating a Model per Controller. But I would creating a Model per database table be considered good practice? That way methods aren't written twice.Instead of Model per Controller or Several small Models that  are shared.Example if I have a model method get_user($user_id) I could write it on users_models.php ...One of the downsides I see of this is that I might have to call several models, rather than just controllername_models.php .Could loading several models where several methods might not be used from a controller affect performance and speed? What could be the best way to tackle this down?Note: There are similar question, but they do not cover the ground of Model per database table.
Models per database table?
database;mvc;codeigniter