Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: kursik php 5.x - jak zrozumiec klasy?
Forum PHP.pl > Inne > Hydepark
Legro
potrzebuje jakiegos bardzo łopatologicznego kursu abym zrozumial i poznał klasy w php 5.x zeby bylo wszystko jasno i zrozumiale napisane z przykladami by bylo dobrze biggrin.gif

nie dawajcie linka do manuala bo czytalem ale nic nie rozumiem z tego :/
NuLL
Takiego kursu obiecnie nie ma - napewno w j.polskim.
Legro
a moglibyscie mi to jakos po krotce wztumaczyc prosze was bardzo..
chce napisac skrypt a nie chce ciagle powtarzac kodu.. prosze sad.gif

  1. <?php
  2. class Koszyk
  3. {
  4.  var $zakupy; // Zakupy w naszym koszyku
  5.  
  6.  // Dodaj $num artykułów typu $artnr do wózka
  7.  
  8.  function dodaj_produkt ($artnr, $num)
  9.  {
  10.  $this->zakupy[$artnr] += $num;
  11.  }
  12.  
  13.  // Usuń $num artykułów typu $artnr z wózka
  14.  
  15.  function usun_produkt ($artnr, $num)
  16.  {
  17.  if ($this->zakupy[$artnr] > $num) {
  18.  $this->zakupy[$artnr] -= $num;
  19.  return true;
  20.  } else {
  21.  return false;
  22.  } 
  23.  }
  24. }
  25. ?>


jak y powzysyego kodu na php 5.x przerobic i prosze o jakies wytumaczenie tego kodu co przerobicie... bardzo was prosze
_Mateo
  1. <?php
  2. class Koszyk
  3. {
  4.    public $zakupy;  // Zakupy w naszym koszyku
  5.   
  6.    // Dodaj $num artykułów typu $artnr do wózka
  7.  
  8.    public function dodaj_produkt ($artnr, $num)
  9.    {
  10.        $this->zakupy[$artnr] += $num;
  11.    }
  12.   
  13.    // Usuń $num artykułów typu $artnr z wózka
  14.  
  15.    public function usun_produkt ($artnr, $num)
  16.    {
  17.        if ($this->zakupy[$artnr] > $num) {
  18.            $this->zakupy[$artnr] -= $num;
  19.            return true;
  20.        } else {
  21.            return false;
  22.        } 
  23.    }
  24. }
  25. ?>

chyba jest dobrze biggrin.gif

Więc tak: w PHP5 trzeba określić prawa dostępu przed nazwą zmiennej zamiast słowa kluczowego var, którym określaliśmy zmienną wewnątrz klasy. Istnieją nast. prawa dostępu: public (czyli dostępna z każdego miejsca kodu), private (dostępna tylko w obrebie klasy bez klas pochodnych) oraz protected (dostęp z klasy matki i klas pochodnych). tak samo rzecz ma się z funkcjami - należy okreslic ich prawa przed słowem function, które są takie same jak w przypadku zmiennej i działają w ten sam sposób. To tyle... chyba biggrin.gif
hwao
copyright by hwao (wszytkkie prawa zastrzezone...)
http://windforce.strefaphp.net/poligon/kurs/klasy.htm

Co do tekstu to nie mialem go czasu jakos konczyc, ale troche tam jest
Speedy
Cytat
Takiego kursu obiecnie nie ma - napewno w j.polskim.


Może i typowego kursu nie ma , ale jest trochę innych interesujących rzeczy - właśnie w PL winksmiley.jpg .

http://www.maciaszek.pl/phpcon/download/oop.pdf
Ociu
  1. <?php
  2. public $zakupy = array(); // Zakupy w naszym koszyku
  3. ?>
Legro
Taak chłopaki cool.gif o to mi chodziło.. jakby sie jeszcze jakies materialy znalazły to prosze napisac biggrin.gifD
_Mateo
@ociu: nie mozesz dac przy inicjacji zmienej array(); bo tam mozesz tylko przypisac prostą wartość (tzn. liczbe, stałą albo ciąg znaków)
NuLL
Wg. mnie tablica z koszykiemn ie powinna być publiczna tongue.gif
Speedy
Cytat(NuLL @ 2005-08-09 19:47:41)
Wg. mnie tablica z koszykiemn ie powinna być publiczna tongue.gif

a jak ktoś będzie sobie chciał zlookać koszyk nie używając żadnej metody to co zrobi ? tongue.gif
Ociu
Cytat(_Mateo @ 2005-08-09 19:15:03)
@ociu: nie mozesz dac przy inicjacji zmienej array(); bo tam mozesz tylko przypisac prostą wartość (tzn. liczbe, stałą albo ciąg znaków)

Dziwne, ja zawsze tak robie i mi jakoś działa.
_Mateo
@ociu: tak pisze w pewnej książce:
Cytat
"Podczas definiowania zmiennej klasy możemy przypisać jej tylko prostą wartość."
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.