Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] jak uzyskać kod funkcji
josephk
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 31.01.2008

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


Mam pewne pytanie:
Czy istnieje funkcja/sposób na uzyskanie kodu php oraz liczby/listy argumentów funkcji z zakresu user defined functions (IMG:style_emoticons/default/questionmark.gif)

chodzi mi o taką sytuację gdy mamy powiedzmy taką funkcję:
  1. function a($aa,$ab)
  2. {
  3. return ($aa*$ab);
  4. }

i potrzebuję funkcję/sposób na to by uzyskać zmienną określającą tę funkcję np w taki sposób:
  1. $zmienna['parametry']=array($aa,$ab);
  2. $zmienna['kod_funkcji']='return ($aa*$ab);';


ktoś ma jakieś pomysły??
Go to the top of the page
+Quote Post
Zyx
post
Post #2





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


  1. <?php
  2.  
  3. function a($aa,$ab)
  4. {
  5. return ($aa*$ab);
  6. }
  7.  
  8. $func = new ReflectionFunction('a');
  9. var_dump($func->getParameters());


Szczegółowy wykaz informacji, jakie możesz wyciągnąć, jest tu:

http://docs.php.net/manual/en/class.reflec...ionabstract.php

Jeśli chodzi o kod funkcji, to w momencie wykonywania skrypt PHP istnieje już wyłącznie w formie kodu bajtowego, więc nie można ot tak rozkazać: "zwróć mi kod funkcji". Tutaj musisz użyć mechanizmu refleksji, by określić, w jakim pliku funkcja jest zdefiniowana, w jakiej linijce się zaczyna i w jakiej kończy, a następnie ręcznie otworzyć ten plik i wyciąć, co trzeba.
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: 22.08.2025 - 22:25