con una cuerda GMT/UTC +/- 0400 o GMT/UTC +/- 1000 según los horarios locales
Su format personalizado solo falta O
para darle los desplazamientos de la zona horaria de la hora local.
diferencia a la hora de Greenwich (GMT) en horas Ejemplo: +0200
date_default_timezone_set('America/La_Paz');
echo date('Y-m-d H:i:s O');
2018-01-12 12:10:11 -0400
Sin embargo, para maximizar la portabilidad/interoperabilidad, recomendaría usar el formato de fecha ISO8601c
date_default_timezone_set('America/La_Paz');
echo date('c');
2018-01-12T12: 10: 11-04: 00
date_default_timezone_set('Australia/Brisbane');
echo date('c');
2018-01-13T02: 10: 11 + 10: 00
También puede usar gmdate
y la cadena de desplazamiento de la zona horaria siempre será +00:00
date_default_timezone_set('America/La_Paz');
echo gmdate('c');
2018-01-12T16: 10: 11 + 00: 00
date_default_timezone_set('Australia/Brisbane');
echo gmdate('c');
2018-01-12T16: 10: 11 + 00: 00
@JeffPuckettII GMT no cambia con el horario de verano. El Reino Unido cambia de GMT a BST en verano, pero GMT permanece igual y siempre coincide con UTC. – Lewis42