Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wylistowanie zmiennych i ich wartości z klasy nie znając ich nazw.
starach
post
Post #1





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Witam mam klasę z której chciałbym wyciągnąć wszystkie zmienne i ich nazwy jak to zrobić,
biorą pod uwagę fakt że ich nie znam. Czy da się w tym wypadku uniknąć używania ReflectionsAPI ?
Powiedzmy mam klasę
  1. <?php
  2. class test {
  3. public $liczba=6;
  4. public $liczba_dwa=3;
  5. public $string='Ala ma kota';
  6. public $string_dwa='Kot ma pchly';
  7. public $double=2.5;
  8. }
  9. ?>
Jak pobrać nazwy tych zmiennych i ich wartości ?
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


jest: get_class_vars() i get_object_vars() tylko pytanie po co Ci to?


--------------------
Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami.
Go to the top of the page
+Quote Post
starach
post
Post #3





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Do debugowania klasy.
Jak coś mi nie będzie działać to wyświetlę listę zmiennych i może mi coś zaświta. Dzisiaj tak przez pół godziny szukałem błędu analizując krok po kroku ponad 20 linijek kodu żeby znaleźć że źle przypisywałem zmienną.
shocked tongue.gif Dzięki wielkie że mi oszczędziłeś szukania w manualu ^^
Go to the top of the page
+Quote Post
kubarek
post
Post #4





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 19.02.2007

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


ew. foreach:
  1. <?php
  2. $test=new test;
  3. foreach($test as $key=>$value){
  4.  // $key - nazwa zmiennej, $value - wartość
  5. }
  6. ?>


--------------------
// ...
Co nieco o mnie ;)
Go to the top of the page
+Quote Post
sobstel
post
Post #5





Grupa: Zarejestrowani
Postów: 853
Pomógł: 25
Dołączył: 27.08.2003
Skąd: Katowice

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


także np. var_dump" title="Zobacz w manualu PHP" target="_manual


--------------------
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org
Go to the top of the page
+Quote Post
NuLL
post
Post #6





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


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


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
starach
post
Post #7





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Kiedy te dwa tygodnie temu wam podziękowałem nie przetestowałem tego rozwiązania. tongue.gif
Otóż chcę otrzymać listę zmienny klasowych z wnętrza danej klasy.
(tutaj miałem kontynuować swój wywód na temat 'O co mi chodzi', ale coś mnie tknęło)
Trochę pomyślałem i sam napisałem hehe
  1. <?php
  2. foreach($this as $key => $val)
  3. {
  4. if(is_object($val)) {
  5. echo $key.': '.get_class($val).'<br>';
  6. } else if(is_array($val)) {
  7. echo '<pre>'.$key.': '.htmlspecialchars(print_r($val, true)).'</pre>';
  8. } else {
  9. echo "$key = $val<br>";
  10. }
  11. }
  12. ?>
O to mi właśnie chodziło ^^
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 06:12