webForumDet fria alternativet

variabelnamn beroende på variabelvärde

PHP

9 svar · 451 visningar · startad av Kim

Medlem sedan jan. 20007 697 inlägg
Frågan#1

Vi säger att jag har en variabel, $i, som för tillfället har värdet 1. Då vill jag att en variabel med namnet $1 ska skapas.
Men om värdet på $i är 4, så vill jag ha en variabel med namnet $4.
Hur gör jag detta?

------------------
Kim Halderot - styled by a barber

kim@finansvalpen.nu

Medlem sedan apr. 20003 971 inlägg
#2

Kim, nemas problemas. :)

$GLOBALS["namn"] = "bla";

gör att $namn blir "bla"

tror att det finns en vektor för funktioner också

------------------
/mvh Swey

- Wadde Hadde Dudde Da

Medlem sedan jan. 20007 697 inlägg
#3

Danke!

------------------
Kim Halderot - styled by a barber

kim@finansvalpen.nu

Medlem sedan jan. 20007 697 inlägg
#4

Eller nää... Jag fattade inte hur det där fungerade.

Kan du skriva ett exempel som fungerar? :)
Säg att att värdet på $i slumpas och slutar på $i = 7. Då vill jag ha en variabel som heter $7.

------------------
Kim Halderot - styled by a barber

kim@finansvalpen.nu

Medlem sedan apr. 20003 971 inlägg
#5

7 vet jag inte om man kan döpa sina variabler till. Testa. Tror det finns regler.

Detta ska fungera i alla fall
$Vem = "Kim";
$GLOBALS[$Vem] = "PHP:are";

echo "$Vem är $Kim";

Svaret blir

Kim är PHP:are

:)

------------------
/mvh Swey

- Wadde Hadde Dudde Da

Medlem sedan dec. 19992 555 inlägg
#6

Man behöver f.ö. inte använda globala variabler för att åstadkomma detta. Följande fungerar:

$foo = "bar";
$$foo = "foobar";
echo $bar;

Kommer att skriva ut foobar.
http://www.php.net/manual/language.variables.variable.php

Sedan var det ju det där med variabelnamn. I PHP kan inte variabelnamn börja med en siffra (som Swey misstänkte), så du får hitta på något annat.

------------------
Robban < robban@lipogram.com >

Medlem sedan jan. 20007 697 inlägg
#7

OK, tack så mycket. Sweys exempel fick jag inte riktigt att fungera men Robbans borde väl fungera fint.
Men det där med variabler måste väl bara vara att döpa dom till $a1, $a2, $a3...

------------------
Kim Halderot - styled by a barber

kim@finansvalpen.nu

Medlem sedan feb. 20001 270 inlägg
#8

Kim
Ja. Eftersom Du i PHP inte kan använda Dig utav variabler som börjar på en siffra så måste Du bygga variabelns namn med en bokstav i början (t.ex. $a1, $a2, $a3 osv..).

------------------
woodi

Svenska FF1
www.johan-skog.nu

Medlem sedan apr. 20003 971 inlägg
#9

Fick du inte mitt exempel att fungera? Varför inte då?

------------------
/mvh Swey

- Wadde Hadde Dudde Da

Medlem sedan jan. 20007 697 inlägg
#10

Kanske för att jag inte ville veta att jag är en PHP:are... ;)

------------------
Kim Halderot - styled by a barber

kim@finansvalpen.nu

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)