PHP twee variabelen combineren

Pagina: 1
Acties:
  • 252 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een post variabele :activiteit1 en nu wil ik die waarde echo-en met een for loop:

for($i=0;$i<10){
echo $activiteit.$i;
}

Dit gaat dus niet werken en die eval functie snap ik niet helemaal. Kan iemand even verklappen hoe dit er uit moet zien. Thanx

Acties:
  • 0 Henk 'm!

  • Superdeboer
  • Registratie: December 2002
  • Niet online

Superdeboer

Sa-weee-tah

Is activiteit1 een array of niet?

Zo ja, doe dan:
PHP:
1
2
3
4
for ($i=0; $i<10; $i++)
{
     echo $activiteit1[$i];
}


Je stelt eerst $i op nul hiermee. Dan zeg je: dit moet alleen uitgevoerd worden als $i kleiner dan 10 is. Ten derde zorg je er dan voor dat ná het uitvoeren van de instructie $i elke keer met één opgehoogd wordt. De lus wordt dan niet meer uitgevoerd nadat $i op 10 is uitgekomen.

Door $i in de index van je array $activiteit1 te plaatsen zorg je dat alle values van de arraykeys 0 tot en met 9 op deze manier afgedrukt worden. :)

When I write my code, only God and I know what it means. One week later, only God knows.
Hell yes it's a Cuban Cigar, but I'm not supporting their economy, I'm burning their fields.


Acties:
  • 0 Henk 'm!

  • PeetR
  • Registratie: Februari 2002
  • Laatst online: 13-09 22:20
klein gokje kan het hier even niet testen maar toch.
PHP:
1
2
3
4
for($i=0;$i<10){
$show = $activiteit.$i
echo $show
}


Ik denk dat het zo zou moeten werken, maar nogmaals ik heb het niet getest.

edit
ja en zie natuurlijk de post hierboven en hieronder. 8)7

[ Voor 16% gewijzigd door PeetR op 24-01-2005 14:09 ]

Your time as a student is the best time of your life


Acties:
  • 0 Henk 'm!

  • megamuch
  • Registratie: Februari 2001
  • Laatst online: 08-12-2024

megamuch

Tring Tring!

PHP:
1
2
3
for($i=0;$i<10;$i++){
echo $activiteit.$i;
}

Je moet de waarde van $i wel ophogen he! /beginnersvraag

[ Voor 10% gewijzigd door megamuch op 24-01-2005 14:08 ]

Verstand van Voip? Ik heb een leuke baan voor je!


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
verkeerd gokje

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja was even die ophoging vergeten maar op de manier waar jullie mee aankomen werkt het niet, aangezien $activiteit zelf geen waarde bevat, $activiteit1 daarentegen wel!! See the problem?

Acties:
  • 0 Henk 'm!

Verwijderd

Ik denk dat TS geen array bedoelt maar dat hij twee variabelen aan elkaar wilt koppelen (zie topic title :) ).

Wat megamuch voorstelt is dus waarschijnlijk de oplossing.
Ohw bedoel je dat, dan moet je dit doen denk ik:

$$activiteit.$i

en de for-loop beginnen met $i=1

[ Voor 25% gewijzigd door Verwijderd op 24-01-2005 14:15 ]


Acties:
  • 0 Henk 'm!

  • Rac-On
  • Registratie: November 2003
  • Niet online
eeeuh, mensen kunnen wel 'beginnersvraag' gaan roepen, maar dan moeten ze er niet het verkeerde antwoord bij geven.

Antwoord op je vraag: ik begrijp dat je meerdere variabelen hebt ($activiteit1, $activiteit2, $activiteit3 enz enz). Het is naar mijn weten in php niet mogelijk om een variabelenaam op te bouwen uit andere variabelen. Wat jij wil kan dus niet.
Er zijn talen waarin dit wel kan, dan krijg je zoiets:
$blaat = 'activiteit1';
echo $$blaat; (oftewel: echo $activiteit1);

edit:
Zie hieronder, met { } kan het dus wel (heb ik zelf ook weer wat geleerd)

[ Voor 11% gewijzigd door Rac-On op 24-01-2005 14:17 . Reden: het blijkt toch te kunnen... ]

doet niet aan icons, usertitels of signatures


Acties:
  • 0 Henk 'm!

  • Superdeboer
  • Registratie: December 2002
  • Niet online

Superdeboer

Sa-weee-tah


Is het een array of wat is het? Geef eens wat meer informatie anders... laat eens wat stukken script zien? Wat is $activiteit1, waar komt die variabele vandaan, wat verwacht je dat-ie bevat, wat wil je ermee gaan doen?


In dat geval is hierboven 't antwoord al gegeven denk ik ja. :)

[ Voor 11% gewijzigd door Superdeboer op 24-01-2005 14:16 ]

When I write my code, only God and I know what it means. One week later, only God knows.
Hell yes it's a Cuban Cigar, but I'm not supporting their economy, I'm burning their fields.


Acties:
  • 0 Henk 'm!

  • SuperRembo
  • Registratie: Juni 2000
  • Laatst online: 20-08 14:36
megamuch schreef op maandag 24 januari 2005 @ 14:08:
PHP:
1
2
3
for($i=0;$i<10;$i++){
echo $activiteit.$i;
}

Je moet de waarde van $i wel ophogen he! /beginnersvraag
Als het een beginnersvraag is beantwoord 'm dan goed, met een werkend voorbeeld.
PHP:
1
2
3
4
5
6
7
    $foo0 = 'alpha';
    $foo1 = 'beta';
    $foo2 = 'gamma';

    for ($i=0; $i<3; $i++) {
        echo ${'foo'.$i}; 
    }


Maar de beste oplossing blijft natuurlijk een array, zoals Superdeboer al zei.

| Toen / Nu


Acties:
  • 0 Henk 'm!

  • Neman
  • Registratie: September 2000
  • Laatst online: 20-09 19:50

Neman

Een uit de lucht gegrepen naam

Gebruik dit:
code:
1
${"activiteit".$i}

Acties:
  • 0 Henk 'm!

Verwijderd

Dit moet werken
code:
1
2
3
4
5
6
<? 
for($i=0;$i<10;$i++){
   $var = "activiteit$i";
   echo $$var; 
} 
?>

[ Voor 20% gewijzigd door Verwijderd op 24-01-2005 14:18 ]


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Neman schreef op maandag 24 januari 2005 @ 14:16:
Gebruik dit:
code:
1
${"activiteit".$i}
liever niet :X

voor dit doel zijn namelijk array's gemaakt, veel veiliger ;)

www.php.net/array

Acties:
  • 0 Henk 'm!

  • Neman
  • Registratie: September 2000
  • Laatst online: 20-09 19:50

Neman

Een uit de lucht gegrepen naam

Erkens schreef op maandag 24 januari 2005 @ 14:17:
[...]

liever niet :X

voor dit doel zijn namelijk array's gemaakt, veel veiliger ;)

www.php.net/array
Je meent het :X. Hij vraagt om deze oplossing, dan kom ik met deze oplossing, niet met iets anders. De array-oplossing is al in de eerste reply gegeven en de TS gaf aan dat niet te willen...

[ Voor 14% gewijzigd door Neman op 24-01-2005 14:20 ]


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Neman schreef op maandag 24 januari 2005 @ 14:19:
[...]

Je meent het :X. Hij vraagt om deze oplossing, dan kom ik met deze oplossing, niet met iets anders.
de vraag is of het wel een oplossing is ;)
Je kan beter iets meteen goed leren dan altijd blijven prutsen met variabele namen.

Acties:
  • 0 Henk 'm!

Verwijderd

haha idd. ik had pcies hetzelfde ;)
Maar ik denk, geef wel ff het antwoord zoals hij het wil. hehe

Acties:
  • 0 Henk 'm!

  • megamuch
  • Registratie: Februari 2001
  • Laatst online: 08-12-2024

megamuch

Tring Tring!

SuperRembo schreef op maandag 24 januari 2005 @ 14:15:
[...]


Als het een beginnersvraag is beantwoord 'm dan goed, met een werkend voorbeeld.
PHP:
1
2
3
4
5
6
7
    $foo0 = 'alpha';
    $foo1 = 'beta';
    $foo2 = 'gamma';

    for ($i=0; $i<3; $i++) {
        echo ${'foo'.$i}; 
    }


Maar de beste oplossing blijft natuurlijk een array, zoals Superdeboer al zei.
Tsja, dan moet de TS maar duidelijker zijn. Eerste wat ik zie is een for loop die niet klopt.

[ Voor 7% gewijzigd door megamuch op 24-01-2005 14:20 ]

Verstand van Voip? Ik heb een leuke baan voor je!


Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Smeriger:
PHP:
1
2
3
4
5
6
7
8
9
10
<?
    $foo0 = 'alpha';
    $foo1 = 'beta';
    $foo2 = 'gamma';

    $i =0;
    while(isset(${$t = 'foo'.$i++}))  {
        echo $$t;
    }
?>

[ Voor 28% gewijzigd door Skaah op 24-01-2005 18:14 ]


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Skaah schreef op maandag 24 januari 2005 @ 18:11:
Smeriger:
PHP:
1
2
3
4
5
6
7
8
9
<?
    $foo0 = 'alpha';
    $foo1 = 'beta';
    $foo2 = 'gamma';

    while(isset(${'foo'.$i}))
        echo ${'foo'.$i};
    }
?>
als $i 0,1 of 2 is dan heb je een endless loop ;)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

En zal bovendien niet werken als $i niet op dat moment op 0, 1 of 2 staat, en als dat het geval is zal hij nooit meer uit de while komen.

Damn you Erkens!

[ Voor 10% gewijzigd door .oisyn op 24-01-2005 18:15 ]

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Skaah
  • Registratie: Juni 2001
  • Laatst online: 16-09 18:38
Jullie hebben gelijk, maar ik had 'm tegelijk al geupdate, kijk even naar de tijd. Skaah in "PHP twee variabelen combineren"

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Je hebt het over een post variabel (de TS dus). Zo kun je een array doorsturen:

input (kan dus get of post zijn):
code:
1
<input type="text" name="var[0]" />


de get methode via een url:
code:
1
pagina.php?var[0]=value&var[1]=etc


Nu kun je komt var gewoon als array binnen. Wel zo handig.

[ Voor 35% gewijzigd door Michali op 24-01-2005 20:05 ]

Noushka's Magnificent Dream | Unity

Pagina: 1