Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AMFPHP] Problem z dziedziczniem
Forum PHP.pl > Forum > PHP > Object-oriented programming
mdco
Mam klasy jak poniżej:
  1. <?php
  2. class testClass {
  3.  
  4. function testClass() {
  5. }
  6.  
  7. public function test() {
  8. echo 'a';
  9. }
  10. }
  11.  
  12. class MainClass extends testClass
  13. {
  14.  
  15. function MainClass()
  16. {
  17. $this->methodTable = array
  18. (
  19. "say" => array
  20. (
  21. "access" => "remote",
  22. "description" => "Pings back a message"
  23. )
  24. );
  25. }
  26.  
  27. function say()
  28. {
  29. return ''.$this->test().'';
  30. }
  31. }
  32. ?>


Gdy wywołuje je w php tzn:
  1. <?php
  2. $test = new MainClass();
  3. $test->say(); // otrzymuje 'a';
  4. ?>

Natomiast jak wywołam za pomocą flasha tzn przez AMFPHP mam pusty string.
AMFPHP chodzi ponieważ jak podstawie zamiast metody 'say':
  1. <?php
  2. function say()
  3. {
  4. return 'aaaa';
  5. }
  6. ?>

to flash zwraca 'aaaa'

Nie wiem czemu to nie działa gdy probuje z dziedziczeniem sad.gif
LBO
Nie znam się na AMFPHP, ale zauważ różnice:
W testClass::test() wyswietlasz 'a' na ekranie (echo" title="Zobacz w manualu PHP" target="_manual), natomiast w MainClass::say() zwracasz wartość (return" title="Zobacz w manualu PHP" target="_manual)... prawdopodobnie w tym leży problem.
DjKermit
Cytat(mdco @ 29.05.2007, 14:48:51 ) *
Natomiast jak wywołam za pomocą flasha tzn przez AMFPHP mam pusty string.

Bo funkcja test nic nie zwraca.
mdco
Jasne czeski błąd. Dzieki.
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.