title: How to handle Laravel application across multiple timezones
body: <p>I've been reading up about the best approach to handling localised times, when a Laravel application is used across multiple timezones.</p>
  
  <p>My understanding is that the app timezone should remain set as the default, which is UTC.</p>
  
  <p>This means that all datetime / timestamps are recorded in the database (MySQL in my case) as their UTC value - in other words, consistently.</p>
  
  <p>For Eloquent models to have the correct (localised) date / time values, the user's timezone must be obeyed. It is at this point that I am less clear on how to proceed - specifically, in terms of:</p>
  
  <ul>
  <li>How the user's timezone is best obtained</li>
  <li>How this timezone can be used in a <strong>transparent</strong> way with Eloquent, so that 
  
  <ul>
  <li>All model dates are output in local time</li>
  <li>All dates are recorded in the database correctly (as UTC)</li>
  </ul></li>
  </ul>
  
  <p><strong>Edit</strong>
  I should mention that my app supports both anonymous and authenticated users, so I don't want to force the user to explicitly select their timezone.</p>