Mailinglisten-Archive |
Markus Ehrlich wrote:
> Ich habe folgenden Code:
>
> <...
>
> $sString = 'var1=one;var2=two;var3=three';
>
> $arPar = explode(';', $sString);
>
> $iC = count($arPar);
>
> for ($i = 0; $i < $iC; $i++) {
>
> $arT = explode('=', $arPar[$i]);
>
> if (!$$arT[0]) {
> $$arT[0] = $arT[1];
> }
> }
>
> ...>
>
> Der erzeugt dynamisch Variablen die im String stehen. Nun sollen
> auch auf diese Weise Arrays erzeugt werden. Beispiel-String:
>
> $sString = 'arArray[0]=one;arArray[1]=two;arArray[2]=three';
>
> Habe schon etliche Sachen mittlerweile ausprobiert mit:
>
> $($arT[0]) oder ($$arT)[0]
>
> Bringt bisher nicht den gewünschten Erfolg.
> Wie kann man dynamisch Arrays erzeugen? Name, Index und Wert ist
> vorgegeben.
$sString = 'var1=one;var2=two;var3=three';
$arPar = explode(';', $sString);
foreach ( $arPar as $sPar )
{
preg_match('^([^=\[]*)(\[([^\]])*\])?=(.*)$', $sPar, $found);
$sVar = $found[1];
$sVarKey = $found[3];
$sVal = $found[4];
...
}
... naja oder os ähnlich , hab das regex jetzt nicht probiert ...
--
Sebastian Mendel (www.sebastianmendel.de)
*www.warzonez.de* | www.tekkno4u.de | www.nofetish.com
php::bar PHP Wiki - Listenarchive