![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
Witam dopiero zaczynam php obiektowy i mam pewnie probelm chce zrobic zwykłą pętle tak dla przykładu ale nie wiem jak przeszukąłem już całe google (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) i czytałem z 6 h dzisiaj (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) i nic nie czaje co z tym $this może mi ktoś to w 4 zdaniach wytłumaczyć będe wdzięczny o to kod:
Kod <?php class Klasa { public $x; public function petla() { for ($x=1; $x<=10; $x++) return $this -> x; } $Klasa = new Klasa; $Klasa ->petla; echo "wynik wynosi{$Klasa->petla}"; ?> no taki błąd Kod Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in
Ten post edytował kielich 11.04.2009, 13:37:13 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 385 Pomógł: 26 Dołączył: 22.03.2008 Skąd: TM Ostrzeżenie: (0%) ![]() ![]() |
Wydaje mi się że odwołujesz się poza klasą do zmiennej składowej private, zmień private na public może (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Tak wogóle jakiś błąd dostajesz?
|
|
|
![]()
Post
#3
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
$Klasa ->petla();
Nawiasy. unexpected T_VARIABLE, expecting T_FUNCTION = niespodziewane odwołanie do zmiennej, spodziewana funkcja Ten post edytował blooregard 11.04.2009, 13:46:22 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
poprawiłem na
Kod $Klasa = new Klasa; $Klasa ->petla(); echo "wynik wynosi{$Klasa->petla}"; dalej to samo kurcze nie wiem czy to ma sens pisania obiektowo (IMG:http://forum.php.pl/style_emoticons/default/co_jest.gif) Ten post edytował kielich 11.04.2009, 13:53:19 |
|
|
![]()
Post
#5
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Cytat dalej to samo Tak, jak mówisz:
Dalej ten sam błąd, tylko w innym miejscu. Jak wywołujesz funkcję, to dajesz NAWIASY po jej nazwie - po tym interpreter PHP odróżnia funkcję od zmiennej. Może lepiej zacznij od podstaw, zanim się zaczniesz bawić z OOP |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
No co do podstaw to strukturalnie już pisze bardzo długo i chciałem spróbować obiektowo
ps. umiesz pocieszyć (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) a poprawiłem bład tak jak kazałeś i dalej cos nie gra cos jest nie tak |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat to strukturalnie już pisze bardzo długo Można bardzo długo wyprzedzać na podwójnej ciągłej i nie wiedzieć, że to niezgodne z przepisami. (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Cytat dalej cos nie gra cos jest nie tak Żadnych błędów, nic? Co się dzieje? |
|
|
![]()
Post
#8
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
no bład dalej tan sam (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Kod Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION in ............ on line 14
|
|
|
![]()
Post
#10
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Cytat No co do podstaw to strukturalnie już pisze bardzo długo i chciałem spróbować obiektowo No to pamietaj, że (strukturalnie) funkcja(); == (obiektowo) $obiekt->funkcja(); Cytat a poprawiłem bład tak jak kazałeś i dalej cos nie gra cos jest nie tak Ale co? Jakis komunikat błędu ? A, już wiem: brakuje Ci zamykającego nawiasu } po definicji klasy Ten post edytował blooregard 11.04.2009, 14:06:03 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
No chociaż jeden ...(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) a nie już ze zle (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ale petla sie nie wykonuje :/
wyswietla tylko wynik wynosi Ten post edytował kielich 11.04.2009, 14:10:14 |
|
|
![]()
Post
#12
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
No kod taki jak był poprzedni ale kiedy zrobie tak
Kod <?php
class Klasa { public $x; public function petla() { $this ->x=2; return $this -> x; } } $Klasa = new Klasa; $Klasa ->petla(); echo "wynik wynosi{$Klasa->petla()}"; ?> to dział normalnie piotrooo89 to pokaz twój kod tzn mój ale twój :) |
|
|
![]()
Post
#14
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
zobacz pare postów wyżej...
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
No nie działa ja chce to wyswietlic na nowym obiektem a nie tak jak ty
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 302 Pomógł: 18 Dołączył: 10.03.2008 Skąd: Dębno Ostrzeżenie: (0%) ![]() ![]() |
A nie trzeba tu konstruktora zbudować ?
|
|
|
![]()
Post
#17
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 27.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
No bo do zmiennej $x nie przypisujesz nic! Zwracasz $this->x ktora nie ma wartosci...
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 442 Pomógł: 4 Dołączył: 28.12.2008 Skąd: Warszawa Ostrzeżenie: (20%) ![]() ![]() |
No dokłądnie o to mi chodziło a możesz mi powiedzieć dlaczego tak $s .= $x; dlaczego z " kropką"
I jesli możesz mi wyjaśnic co z tym $this |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 27.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Cytat No dokłądnie o to mi chodziło a możesz mi powiedzieć dlaczego tak $s .= $x; dlaczego z " kropką" do zmiennej $s dopisuje zmienna $x; to taki sam zapis jak $s = $s.$x; I przy okazji, szybki powrot do pierwszego kodu: Kod <?php class Klasa { public $x; public function petla() { for ($x=1; $x <= 10; $x++) return $this->x; } } $Klasa = new Klasa; echo "wynik wynosi{$Klasa->petla()}"; ?> W iteracji zwiekszasz zmiena $x a zwracasz $this->x. To dwie rozne sprawy. Ten post edytował adrian.p 11.04.2009, 14:47:09 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 11:29 |