Ajustar fecha según Zona horaria o GMT en PHP

Todos los servidores tienen la hora en GMT+0 pero según la configuración en php.ini nos mostrará cierta hora, lo puedes comprobar visualizando la hora completa date("r",time()), o con date("l jS \of F Y h:i:s A - \G\M\T: P", time()) el problema se da cuando queremos mostrar la fecha/hora según una franja horaria específica, en php se puede configurar la hora usando date_default_timezone_set e indicando la franja según el parámetro que permite la función, pero en lo personal estoy acostumbrado a tener la hora del servidor de una tabla y según el GMT que le indico que me muestre la hora Esta es una…