Вы должны установить свойство timestamp time_zone, как показано ниже:
date_default_timezone_set('Asia/Tehran');
Другой способ использовать эту функцию для преобразования григорианского языка в персидский после загрузки:
public function gregorianToPersian($gregorian)
{
date_default_timezone_set('Asia/Tehran');
$gregorian = date_parse($gregorian);
$persian = $this->fromGregorian([$gregorian['year'], $gregorian['month'],
$gregorian['day'], $gregorian['hour'], $gregorian['minute'],
$gregorian['second']])->toPersian('en')->asDateTime();
return $persian;
}