I am trying to find the best way of having days in a column in the DB, at present for ease we have created 7 columns Monday, Tuesday etc that either have a 1 or a 0, but I was wondering if there is a better way in Laravel that would only have 1 column with all the details like the C# flagged Enum.
I just use the built in day of week functions of mysql and store the day in the db as an integer. 0 = Sunday, 6 = Saturday, which is also the same scheme that php assigns numbers to days of the week (w flag in date()). This just makes it easier to use php/mysql's built in date functions and translating, like back to the textual representation "Sunday", etc.
I'd avoid enum datatype. There are many drawbacks that you will find if you google them. It might be ok for this specific case since you will never add an additional day of the week (there will always be 7), but generally enums in the database are a bad choice because you can't just add or remove a value without having to manually change all of the values. What if you need to display the days in a different language? With enum you can't, the values are hard-coded.
So are you saying that in the table you would have numbers from 0-6 so if it was Monday and Friday you would have 1 and 5? And so on? And then when you call those numbers back you split them and get the assigned days?