PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : implode löscht ersten Eintrag im Array


rAbe
28.10.2007, 22:17:23
Hallo miteinander,

Ich hab ein Problem und zwar hab ich einen Array mit dem Schema:

$a['irgendwas'] = 15;
$a['irgendwas_anderes'] = 300;
.
.
.

Ich möchte den zerlegen in zwei Strings und zwar den einen String mit den Werten ("15,300,x,y,z") und den anderen mit den Keys ("irgendwas,irgendwas_anderes,noch_was_neues").

Meine Lösung:


$werte = implode(",",$this->attribute);
$keys = implode(",",array_flip($this->attribute));


Das Ganze hat aber einen Haken. Beim String $werte wird immer der erste Eintrag vom Array nicht mit implodiert. Bei $keys funkt das aber tadellos. Darum hat $keys mehr Werte gespeichert als $werte, was später zu Problemen führt.

Ist das verständlich?

Kennt jemand das Problem? Gibt es etwas um das zu umgehen? Habt ihr vielleicht sogar eine andere Lösung (ohne foreach / while)?

Gruss und Dank im Voraus

rAbe

rambi
28.10.2007, 23:32:53
<?php
$a['irgendwas'] = 15;
$a['irgendwas_anderes'] = 300;
$a['x'] = 22;
$a['y'] = 33;

$values = implode(',',array_values($a));
$keys = implode(',',array_keys ($a));
?>
<pre>
<?php echo $values .'<br>'.$keys;?>
</pre>
tuts perfekt