PDA

Bekijk Volledige Versie : PHP - variabelen samenvoegen



Haico
20/11/05, 14:30
Hallo,

Ik heb al gegoogeld en diverse dingen geprobeerd maar het lukt me niet om de
naam van een variable te veranderen. Ik heb een database tabel met daarin
velden als 1a,a2,a3,a4,a5 en w1,w2,w3,w4,w5 etc en die wil ik in een array
zetten met een for next lus.

==== één van de vele probeersels ========
$n++ ;
for ( $n2=1 ; $n2<=$keuzes_max ; $n2++ )
{
$answer[$n][$n2] = $record->a.'$n2' ;
$value[$n][$n2] = $record->w.'$n2' ;
}
================================

ik wil dus eigenlijk dat het cijfer c.q. getal in
$record->a1
$record->a2
$record->a3
$record->a4
in de loop automatisch veranderd.

Iemand een idee ?

Bedankt alvast,

Haico.

Erick T. Barkhuis
20/11/05, 14:45
[on Sun, 20 Nov 2005 14:17:27 +0100] wrote:

> Ik heb een database tabel met daarin
> velden als a1,a2,a3,a4,a5 en w1,w2,w3,w4,w5 etc en die wil ik in een array
> zetten met een for next lus.

In PHP kun je werken met een dubbel dollarteken als variabele-aanduiding.

$a1 = "Testje";
$eenVariabele = "a1";
echo ($$eenVariabele); resulteert in "Testje".

Op die manier kun je vrij makkelijk je variabele-namen van stringvorm
omzetten tot variabele-vorm.



--
Erick

WebWax Webdesign - http://webwax.ardane.com

Michiel de Roo
20/11/05, 22:30
Haico wrote:
> Hallo,
>
> Ik heb al gegoogeld en diverse dingen geprobeerd maar het lukt me niet om de
> naam van een variable te veranderen. Ik heb een database tabel met daarin
> velden als 1a,a2,a3,a4,a5 en w1,w2,w3,w4,w5 etc en die wil ik in een array
> zetten met een for next lus.
>
> ==== één van de vele probeersels ========
> $n++ ;
> for ( $n2=1 ; $n2<=$keuzes_max ; $n2++ )
> {
> $answer[$n][$n2] = $record->a.'$n2' ;
> $value[$n][$n2] = $record->w.'$n2' ;
> }

Je moet iig "$n2" gebruiken ipv '$n2'. In combinatie met Erick zijn suggestie:

$var = "a$n2";
$answer[$n][$n2] = $record->$var;

> ================================
>
> ik wil dus eigenlijk dat het cijfer c.q. getal in
> $record->a1
> $record->a2
> $record->a3
> $record->a4
> in de loop automatisch veranderd.
>
> Iemand een idee ?
>
> Bedankt alvast,
>
> Haico.
>
>