Функция time возвращает количество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970 00:00:00 GMT) до текущего времени. (c) PHP.net
Поэтому её вывод не зависит от выбранной временной зоны. Функции же наподобие date, учитывают этот параметр. Точно также как и strtotime('tomorrow') - он выдаёт временную метку начала завтрашнего дня (00:00), а определить это время без зоны невозможно. В то время как время '+1 second' не зависит от зоны. По-моему, всё логично
> Каким функциям можно верить?)
Зависит от того что Вам нужно :)