Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Statyczne Wywoływanie Metod
Vengeance
post
Post #1





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

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


Taki kod
Kod
<?php
   class foo
   {
      function bar($var)
      {
         return $var;
      }
   }

   $cos = foo::bar('aaa');
?>


A jak zrobić aby zadziałało coś w tym stylu:
Kod
<?php
   class foo
   {
      function bar($var)
      {
         return $var;
      }
   }
   $class = 'foo'
   $cos = $clas::bar('aaa');
?>
Go to the top of the page
+Quote Post
kicaj
post
Post #2





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Moze get_class" title="Zobacz w manualu PHP" target="_manual();
Go to the top of the page
+Quote Post
Vengeance
post
Post #3





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

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


[query]
string get_class ( object obiekt)

Funkcja ta zwraca nazwę klasy, której obiekt jest egzemplarzem. Zwraca FALSE jeżeli obiekt nie jest obiektem.
[/query]

E nie oto mi chodziło. Gdy tworzy się nowy obiekt to można zrobić tak

Kod
<?php
$class = 'foo';
$object = new $class('argument');
?>


A jak osiągnąć to samo tylko, że wywołując metode statycznie.
Kod
<?php
$class = 'foo';
$costam = $foo::metoda('argumenty');
?>
Go to the top of the page
+Quote Post
DeyV
post
Post #4





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




call_user_func" title="Zobacz w manualu PHP" target="_manual

  1. <?php
  2. class myclass {
  3. function say_hello() 
  4. {
  5. echo &#092;"Hello!n\";
  6. }
  7. }
  8.  
  9. $classname = &#092;"myclass\";
  10.  
  11. call_user_func(array($classname, 'say_hello'));
  12. ?>
Go to the top of the page
+Quote Post
Vengeance
post
Post #5





Grupa: Zarejestrowani
Postów: 657
Pomógł: 2
Dołączył: 15.08.2003
Skąd: Łódź

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


O dzięki. Też patrzyłem na tę funkcję ale kurcze nie zauważyłem, że zwraca mixed. Bo zależało mi nie na samym wykonaniu metody, ale pobraniu tego co ona zwraca.

thx
Go to the top of the page
+Quote Post

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: 23.08.2025 - 01:55