Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> $$ I Tablice
szafranek.net
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 20.03.2004

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


Mam zmienną tekstową zawierającą nazwę elementu tablicy:
  1. <?php
  2. $nazwa = '$tab[0]';
  3. ?>


$tab przechowuje stringi:
  1. <?php
  2. $tab[0] = 'bla bla';
  3. ?>


Chciałbym je wyświetlić. Dlaczego nie działa mi coś takiego?

  1. <?php
  2. echo $$nazwa;
  3. ?>


Jeśli pozbędę się znaku $ z wartości przechowywanej w $nazwa, również nie działa. Ze skalarami nie ma problemów, konstrukcja $$ nie działa mi tylko z tablicami. Obszedłem to wyłuskując indeksy $tab z $nazwa za pomocą wyrażeń regularnych, ale chyba da się to zrobić bez armaty? (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
szafranek.net
post
Post #2





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 20.03.2004

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


No dobrze. A weźmy ciekawszy przypadek.

Niech $tab będzie talicą asocjacyjną:

  1. <?php
  2.  
  3. $tab['aaa'] = 'azx';
  4. $tab['bbb'] = 'zcb';
  5. $tab['ccc'] = 'erc';
  6.  
  7. ?>


A mój string zawiera coś takiego:

  1. <?php
  2.  
  3. $nazwa = '$tab[\"xxx\"]';
  4.  
  5. ?>


Problem polega na sprawdzeniu, czy w $tab rzeczywiście istnieje wartość z indeksem xxx.
Próbowałem czegoś takiego:

  1. <?php
  2.  
  3. if (isset($$nazwa)) {
  4. // costam
  5. }
  6.  
  7. ?>


Ale oczywiście nie działa. Da się to sprawdzić bez korzystania z wyrażeń regularnych i zabaw z substr()?
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: 8.10.2025 - 16:16