Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Programowanie obiektowe
Forum PHP.pl > Forum > PHP
lukaszphp
Jako iż dopiero zacząłem zabawę z obiektowym PHP (uczę się z książki), mam tutaj taki prosty skrypcik.

  1. class engine
  2. {
  3.  
  4. var $option;
  5.  
  6. function __set($variable, $value)
  7. {
  8.  
  9. if ($variable == "option" && $value < 100)
  10. $this -> $variable = $value;
  11.  
  12. }
  13.  
  14. }


No i z tego wynika (przynajmniej moim zdaniem), że jeśli zmienna variable jest zmienną option i wartość jest mniejsza niż 100, to wtedy zmienna variable przechowuje wartość value.

No i fajnie, ale jak teraz napiszę sobie coś takiego:

  1. $engine = new engine();
  2. $engine -> option = 101;
  3.  
  4. echo $engine -> option;


To 101 Mi się dalej wyświetla, czy coś jest nie tak? Czy źle rozumuję? smile.gif

Z góry dzięki za pomoc,
Pozdrawiam.
Crozin
Cytat
var $option;
Wyrzuć tę książkę czym prędzej.

http://www.php.net/manual/en/language.oop5...loading.members
lukaszphp
Jakieś wyjaśnienie?

A zresztą wiele osób poleca tą książkę (i tania ona nie była).
PHP i MySQL. Tworzenie stron WWW. Vademecum Profesjonalisty. Wydanie 3
blooregard
Cytat
Jakieś wyjaśnienie?

Tak. To przestarzała składnia, pochodząca z PHP 4.

Cytat
A zresztą wiele osób poleca tą książkę (i tania ona nie była).

Administracja rządowa RP też tania nie jest, a na PO głosowało wielu Polaków.
Efekt jaki jest, każdy widzi na co dzień.

Znasz takie powiedzenie "owczy pęd" ? (bo wielu, to i ja też...)
Pasuje tu jak ulał.

lukaszphp
Dobra, dzięki, już sobie poradziłem. Po prostu usunąłem linijkę:
  1. var $option;

Nie wiem co to dało, ale ważne, że działa. tongue.gif
blooregard
Cytat
Nie wiem co to dało, ale ważne, że działa.

W ten sposób daleko nie zajdziesz.
Musisz wiedzieć, dlaczego zadziałało.

W tym celu na początku każdego skryptu dodawaj:
  1. ini_set('display_errors' , 'on');

i czytaj komunikaty, jakie wyświetla Ci interpreter. Jesli czegoś nie będziesz rozumiał, pytaj. Ale najpierw staraj się zrozumieć samodzielnie, to najlepsza metoda nauki.

var $zmienna - to sposób deklarowania składowej klasy w PHP w wersji 4.
W obecnej wersji (PHP 5) składowe klasy deklarujemy za pomocą modyfikatorów dostępu, znanych z innych języków OOP (C++, Java), czyli: private, protected i public.

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.