Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Metoda wewnątrz metody
daniel1302
post
Post #1





Grupa: Zarejestrowani
Postów: 602
Pomógł: 30
Dołączył: 1.08.2007
Skąd: Nowy Sącz

Ostrzeżenie: (0%)
-----


Witam w teście na php.pl napotkałem na takie pytanie.
I czy może mi ktoś wytłumaczyć jak to wygląda, ja sobie uświadamiam, że to takie coś


  1. <?php
  2. Class Klasa
  3. {
  4. function metoda1()
  5. {
  6. function metoda2()
  7. {}
  8. }
  9. }
  10. ?>


Oto pytanie
Klasa posiada metodę z metodą wewnątrz niej. Jak możemy się odwołać do metody ujętej w innej metodzie?
$klasa->metoda1().metoda2()
$klasa.metoda1().metoda2()
$klasa->fmetoda1(metoda2())
$klasa->metoda1()->metoda2() - Ja to zaznaczyłem.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
#luq
post
Post #2





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


Powiem szczerze o takim czymś nie wiedziałem.

Co nie znaczy, że mylę się pisząc:
Cytat
metoda nie może mieć metody

Metody mogą mieć tylko obiekty a, że metoda nie jest obiektem nie może mieć metod.

Tak samo działa i takie coś:
  1. <?php
  2. function a(){
  3.    function b(){
  4.        echo 'bla';
  5.    }
  6. }
  7.  
  8. a().b();
  9. ?>

I co w tym wypadku? Funkcja ma metodę?
belliash wytłumacz mi w, którym miejscu napisałem bzdurę/bzdury?

Co do tego odwoływania się do funkcji, funkcji to jakoś przypomina mi to C++. Tam do zmiennej obiektowej odwołujemy się przez operator kropki, natomiast jak mamy wskaźnik to przez strzałkę (->). W PHP jest na odwrót z tego wynika. Myślałem, że w PHP nie ma wskaźników jako takich. Czyli w PHP jest tak jak np. w C++, funkcja jest wskaźnikiem do miejsca, gdzie ona jest zapisana, i możemy to w jakiś sposób wykorzystać? Ogólnie, mógłby wytłumaczyć mi ktoś ten zapis z kropką? Na jakiej zasadzie to działa.

Ten post edytował #luq 11.04.2009, 19:09:04
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 04:33