Explode() erst bei Index 1 anfangen lassen
Tom
- php
Hello,
noch ein kleines Problemchen zur Nacht:
Normalerweise soll $list als indiziertes Array übergeben werden.
Es kommt aber auch vor, dass es eine Liste als String ist
"Element1,Element2,Element3,Element4,"
Der Index "0" darf nicht belegt werden, da er später für "nichts ausgewählt" steht. Bei Übergabe als Array ist das gewährleistet.
Nun suche ich eine Funktion, mit der man das mit explode() erzeugte Array erst bei Index 1 anfangen lassen kann. Was Anderes als unten, fiel mit nicht ein. hat jemand eine bessere Idee?
if (!is_array($list))
{
$a1 = array();
$a1[0] = "";
$list = $a1 + explode(",",$list);
unset($list[0]);
#$list = explode(",",$list); # fängt schon bei 0 an.
}
Liebe Grüße aus http://www.braunschweig.de
Tom
Wie wäre es mit
$arr = explode(",", ","+$liste);
also fügst am anfang deiner Zeichenkette einfach das , ein, somit dürfte der 1. eintrag leer sein und deine "eigentliche" Liste mit index 1 beginnen.
Das ganze ist jetzt nicht getestet, müsste aber klappen
gl & hf
Thorsten
argg,
natürlich
$arr = explode(",", ",".$liste);
war gedanklich irgendwie gerade bei javascript ein bischen ^^
gl & hf
Thorsten
Hello,
$list = $desc["opt"];
if (!is_array($list))
{
$list = explode(",",",".$list);
unset($list[0]);
}
Ja, danke. Wieso einfach, wenn es auch umständlich geht?
Hast natürlich recht. Und das 0te Element kann ich so auch rausschießen.
Liebe Grüße aus http://www.braunschweig.de
Tom