Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Pobieranie zmiennej z klasy
Forum PHP.pl > Forum > Przedszkole
kalibovers
Gdzie tu jest błąd, że nie pobiera mi aktualnego koloru w wierszu "echo 'Gruszka koloru (tutaj kolor $jakie )nie zjedzona <br> ' "
  1. <?php
  2. ini_set('display_errors', 'on');
  3. class jablko {
  4. public $kolor;
  5. public $waga;
  6. function jablko($jakie,$ilewazy)
  7. {
  8. $this->kolor = $jakie;
  9. $this->waga = $ilewazy;
  10. }
  11. function ugryz(){
  12. $this->waga--;
  13. }
  14. function wiekszygryz(){
  15. $this->waga--;
  16. $this->waga--;
  17. }
  18. function zjedzone(){
  19. echo 'Zjedzone! ';
  20. }
  21. function jablko2(){
  22. echo 'jablko ';
  23. }
  24. function wypluj(){
  25. $this->waga++;
  26. }
  27. function gruszka(){
  28. echo 'gruszka ';
  29. }
  30. function gruszkanowa(){
  31. echo 'Nowa gruszka ';
  32. }
  33. function jablkonowe(){
  34. echo 'Nowe jablko ';
  35. }
  36. function niezjedzone(){
  37. $this->kolor = "$jakie";
  38. echo 'Gruszka koloru (tutaj kolor $jakie )nie zjedzona <br> ';
  39. }
  40. }
  41. $ojablko = new jablko('zielone',15);
  42. $ojablko->jablkonowe();
  43. echo ($ojablko->kolor.'<br>');
  44. $ojablko->wiekszygryz();
  45. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  46. $ojablko->ugryz();
  47. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  48. $ojablko->ugryz();
  49. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  50. $ojablko->ugryz();
  51. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  52. $ojablko->wiekszygryz();
  53. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  54. $ojablko->wypluj();
  55. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  56. $ojablko->ugryz();
  57. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  58. $ojablko->wiekszygryz();
  59. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  60. $ojablko->wiekszygryz();
  61. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  62. $ojablko->wiekszygryz();
  63. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  64. $ojablko->ugryz();
  65. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  66. $ojablko->zjedzone();
  67. $ojablko->jablko2();
  68. echo ($ojablko->kolor.'<br>');
  69. $ojablko = new jablko('zolta',16);
  70. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  71. $ojablko->wiekszygryz();
  72. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  73. $ojablko->wiekszygryz();
  74. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  75. $ojablko->wiekszygryz();
  76. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  77. $ojablko->wiekszygryz();
  78. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  79. $ojablko->wiekszygryz();
  80. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  81. $ojablko->niezjedzone();
  82. $ojablko -> gruszkanowa();
  83. $ojablko = new jablko('zielona',16);
  84. echo ($ojablko->kolor.'<br>');
  85. $ojablko->wypluj();
  86. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  87. $ojablko->wiekszygryz();
  88. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  89. $ojablko->wiekszygryz();
  90. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  91. $ojablko->wiekszygryz();
  92. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  93. $ojablko->wiekszygryz();
  94. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  95. $ojablko->wiekszygryz();
  96. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  97. $ojablko->wiekszygryz();
  98. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  99. $ojablko->ugryz();
  100. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  101. $ojablko->ugryz();
  102. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  103. $ojablko->ugryz();
  104. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  105. $ojablko->ugryz();
  106. echo ($ojablko->kolor.''.$ojablko->waga.'<br>');
  107. $ojablko->zjedzone();
  108. $ojablko->gruszka();
  109. echo ($ojablko->kolor.'<br>');
  110. $ojablko->wiekszygryz();
  111. ?>
buliq
  1.  
  2. function niezjedzone(){
  3. $this->kolor = "$jakie"; // $jakie jest nie zdefiniowane, wywali błąd E_NOTICE
  4. // może chciałeś to podac w parametrze? ale raczej strzelam że to jest błąd
  5. echo 'Gruszka koloru (tutaj kolor $jakie )nie zjedzona <br> '; // $jakie wciąż nie istnieje powinieneś użyć {$this->kolor} zamiast $jakie
  6. }
  7.  
kalibovers
No własnie wywala błąd albo nie czytuje skryptu w ogóle. Probowałem dac jako zmienna ale jakos nie zbyt to działa.
Boshi
Jaki błąd? w której linijce? ludzie podawajcie takie info, bo bez tego to wróżyć nie będziemy.

Jeżeli chodzi o to co napisał kolega wyżej to zdefiniuj $jakie w parametrze metody.


Buliq, w pierwszym wypadku nie wyrzuci E-Notice bo jest to string; w drugim owszem.

p.s Używaj wersji 5+, konstruktory tworzy się przez __construct($arg, $arg1), tak samo tworzy się destruktory __destruct... Unknow tworzył te filmiki baaardzo dawno temu dlatego piane są w wersji 4.
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.