• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zwracanie zmiennej statycznej w toString

VPS Starter Arubacloud
+1 głos
120 wizyt
pytanie zadane 18 maja 2022 w PHP przez MKolaj15 Bywalec (2,270 p.)

Witam, stworzyłem klasę Car, która ma posiadać zmienną statyczną $ile, która zwiększa się za każdym stworzeniem obiektu za pomocą operatora new. Czy jest jakiś sposób, aby tą ilość później wyświetlić w metodzie __toString, albo jakkolwiek inaczej?

<?php
    class Car{
        private static int $ile = 0;
        private $model;
        private $cena;
        private $kurs;

        public function __construct(){
            self::$ile++;
        }

        public function __get($property) {
            if ($property === 'model') {
                return $this->model;
            }
            if ($property === 'cena'){
                return $this->cena;
            }
            if ($property === 'kurs'){
                return $this->kurs;
            }
        }

        public function __set($property, $value) {
            if ($property === 'model') {
                $this->model = $value;
            }
            if ($property === 'cena'){
                $this->cena = $value;
            }
            if ($property === 'kurs'){
                $this->kurs = $value;
            }
        }

        public function value(){
            return $this->cena * $this->kurs;
        }

        public function __toString(): string
        {
            return "Ile: $this->ile\n".    // to nie działa :(
                "Model: $this->model\n".
                "Cena: $this->cena\n".
                "Kurs: $this->kurs\n";
        }

    }

?>

 

1 odpowiedź

+3 głosów
odpowiedź 18 maja 2022 przez Bosswell Nałogowiec (36,470 p.)
wybrane 18 maja 2022 przez MKolaj15
 
Najlepsza
`$this` używasz w kontekście danego obiektu. Do posługiwania się zmienną statyczną, uzyj `self::ile`.
komentarz 18 maja 2022 przez MKolaj15 Bywalec (2,270 p.)
Wielkie dzięki za pomoc.

Podobne pytania

0 głosów
0 odpowiedzi 210 wizyt
0 głosów
1 odpowiedź 132 wizyt
pytanie zadane 16 listopada 2016 w Java przez kaminki Obywatel (1,030 p.)
0 głosów
0 odpowiedzi 94 wizyt
pytanie zadane 18 lutego 2019 w C i C++ przez MrChick888 Obywatel (1,020 p.)

92,782 zapytań

141,712 odpowiedzi

320,590 komentarzy

62,114 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...