Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Nazwa zmiennej w innej zmiennej
rayman
post 27.07.2007, 07:53:18
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 10.04.2006

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


Mam taki kod:

  1. <?php
  2. $nr=2;
  3. $zmienna2="tekst";
  4. $zmienna = "$zmienna".$nr;
  5.  
  6. echo("$zmienna");
  7. ?>


Chciałbym aby echo wypisało mi tekst a nie $zmienna2. Czyli musi podążać za wewnętrzną zmienną. Co mam zrobić?

Ten post edytował rayman 27.07.2007, 07:58:08
Go to the top of the page
+Quote Post
nospor
post 27.07.2007, 07:55:59
Post #2





Grupa: Moderatorzy
Postów: 36 441
Pomógł: 6290
Dołączył: 27.12.2004




http://www.php.net/manual/pl/language.variables.variable.php

proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
rayman
post 27.07.2007, 08:22:40
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 10.04.2006

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


Dzięki, za szybką odpowiedź. Dla innych:) powinno to tak wyglądać:

  1. <?php
  2. $nr=2;
  3. $zmienna2="tekst";
  4. $$zmienna = "zmienna".$nr;
  5.  
  6. echo("${$zmienna}");
  7. ?>
Go to the top of the page
+Quote Post
mike
post 27.07.2007, 08:31:40
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Zastanawiam się skąd ludzie biorą takie idiotyzmy jak:
  1. <?php
  2.  
  3. echo("${$zmienna}");
  4.  
  5. ?>
:?:

Powinno być:
  1. <?php
  2.  
  3. echo ${$zmienna};
  4.  
  5. ?>
Go to the top of the page
+Quote Post
qwaq
post 27.07.2007, 09:11:19
Post #5





Grupa: Zarejestrowani
Postów: 162
Pomógł: 1
Dołączył: 15.05.2007
Skąd: Łódź

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


hmm może sie myle ale skoro:
Kod
echo("lalala");


i
Kod
echo "lalala";


wypisze to samo
to jaka jest różnica (poza ilością znaków)?


--------------------
Chcę kobietę!!! Cierpliwą i wyrozumiałą jak stado bydła przed dojeniem.....

Życie jest jak papier toaletowy-długie, szare i do dupy, ale na szczęście czasem pachnie rumiankiem


wynajmę mieszkanie?
Go to the top of the page
+Quote Post
Kicok
post 28.07.2007, 08:20:44
Post #6





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Nie ma żadnej. Różnica jest gdy masz:
  1. <?php
  2.  
  3. $zmienna = 'abc';
  4. echo "$zmienna";
  5.  
  6. ?>


i
  1. <?php
  2.  
  3. $zmienna = 'abc';
  4. echo $zmienna;
  5.  
  6. ?>


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
Neojawor
post 30.07.2007, 23:55:34
Post #7





Grupa: Zarejestrowani
Postów: 106
Pomógł: 1
Dołączył: 2.12.2005
Skąd: Jaworzno

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


i w tym różnicy nie ma, bo PHP szuka między cudzysłowami wartości zmiennych. Dopiero jak wstawisz
  1. <?php
  2. echo '$zmienna';
  3. ?>
to wypisze nazwę zmiennej. Wpisując:
  1. <?php
  2. echo "$zmienna";
  3. ?>

i
  1. <?php
  2. echo $zmienna;
  3. ?>

uzyskasz to samo, czyli wartość zmiennej smile.gif
Różnica taka że echo "$zmienna"; wykonuje się dłużej
Go to the top of the page
+Quote Post
qwaq
post 31.07.2007, 08:46:51
Post #8





Grupa: Zarejestrowani
Postów: 162
Pomógł: 1
Dołączył: 15.05.2007
Skąd: Łódź

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


nie chodziło mi o rodzaj cudzysłowów a o nawiasy. Co zmieniają w szybkości i jaki to jest rząd wielkości?


--------------------
Chcę kobietę!!! Cierpliwą i wyrozumiałą jak stado bydła przed dojeniem.....

Życie jest jak papier toaletowy-długie, szare i do dupy, ale na szczęście czasem pachnie rumiankiem


wynajmę mieszkanie?
Go to the top of the page
+Quote Post
KR2615
post 18.10.2022, 18:22:12
Post #9





Grupa: Zarejestrowani
Postów: 311
Pomógł: 13
Dołączył: 7.05.2007

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


Nie będę zakładał nowego tematu tylko odkopię. Załóżmy, ze chcę mieć dwie tablice: $dataPLN i $dataUSD. Stworzyłem taki fragment kodu:
[php]$currencies = array('PLN','USD');
foreach($currencies as $currency) {
...
$data${currency} .= array('blah');
}/php]
i nie działa. Co robię źle? Jak użyć zmiennej w środku innej zmiennej?


--------------------
Go to the top of the page
+Quote Post
Salvation
post 18.10.2022, 18:40:35
Post #10





Grupa: Zarejestrowani
Postów: 339
Pomógł: 70
Dołączył: 15.07.2014

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


Nie rozumiem po co takie kombinowanie, ale...
  1. $variable = 'PLN';
  2. $variable = 'data' . $variable;
  3.  
  4. ${$variable} = 'asd';
  5.  
  6. echo $dataPLN;

Demo: https://3v4l.org/qGJ9H

Czyli na Twoje to będzie tak: https://3v4l.org/94QPj
Go to the top of the page
+Quote Post
KR2615
post 18.10.2022, 20:12:31
Post #11





Grupa: Zarejestrowani
Postów: 311
Pomógł: 13
Dołączył: 7.05.2007

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


Dzięki, zadziałał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 Wersja Lo-Fi Aktualny czas: 16.04.2024 - 13:42