помагите пожалучто ставить timezone для текушее время php oop

<?php
class time{
    private $hour=0;
    private $min=0;
    private $sek=0;
    public function __construct($h,$m,$s){
        $this->sethour($h);
        $this->setmin($m);
        $this->setsek($s);
        
        
        
    }
    
    public function __destruct(){
        $this->showtime();

    }
    public function showtime(){
        echo $this->hour.' : '.$this->min.' : '.$this->sek;
    }
    public function sethour($hour){
        if(gettype($hour)=='integer' && $hour<=23 && $hour>=0){

        $this->hour=$hour;
        }
    }
    public function setmin($min){
        if(gettype($min)=='integer' && $min<=59 && $min>=0){
            
        $this->min=$min;
        }
    }
    public function setsek($sek){
        if(gettype($sek)=='integer' && $sek<=59 && $sek>=0){
            
        $this->sek=$sek;
        }
    }
    public function gethour(){
        return $this->hour;
    }
    public function getmin(){
        return $this->min;
    }
    public function getsek(){
        return $this->sek;
    }


}
    
$t=new time(15,22,38);
echo $t=new showtime();

Ответы (1 шт):

Автор решения: StereoFlo

Немного отредактировал, все вполне работает. В методе showtime(), вместо того, чтобы выводить строку непосредственно в методе, я её вернул

<?php

class time
{
    private $hour = 0;
    private $min = 0;
    private $sek = 0;

    public function __construct($h, $m, $s)
    {
        $this->sethour($h);
        $this->setmin($m);
        $this->setsek($s);


    }

    public function __destruct()
    {
        $this->showtime();
    }

    public function showtime()
    {
        return $this->hour . ' : ' . $this->min . ' : ' . $this->sek;
    }

    public function sethour($hour)
    {
        if (gettype($hour) == 'integer' && $hour <= 23 && $hour >= 0) {

            $this->hour = $hour;
        }
    }

    public function setmin($min)
    {
        if (gettype($min) == 'integer' && $min <= 59 && $min >= 0) {

            $this->min = $min;
        }
    }

    public function setsek($sek)
    {
        if (gettype($sek) == 'integer' && $sek <= 59 && $sek >= 0) {

            $this->sek = $sek;
        }
    }

    public function gethour()
    {
        return $this->hour;
    }

    public function getmin()
    {
        return $this->min;
    }

    public function getsek()
    {
        return $this->sek;
    }


}

$t = new time(15, 22, 38);
echo $t->showtime();
→ Ссылка