App\Helpers\Macros\Traits\Dropdowns::selectTimezone PHP Method

selectTimezone() public method

public selectTimezone ( $name, null $selected = null, array $options = [] ) : mixed
$name
$selected null
$options array
return mixed
    public function selectTimezone($name, $selected = null, $options = array())
    {
        $list = [];
        $utc = new \DateTimeZone('UTC');
        $dt = new \DateTime('now', $utc);
        foreach (\DateTimeZone::listIdentifiers() as $tz) {
            $current_tz = new \DateTimeZone($tz);
            $offset = $current_tz->getOffset($dt);
            $transition = $current_tz->getTransitions($dt->getTimestamp(), $dt->getTimestamp());
            $abbr = $transition[0]['abbr'];
            $list[$tz] = $tz . ' [' . $abbr . ' ' . $this->formatOffset($offset) . ']';
        }
        return $this->select($name, $list, $selected, $options);
    }