phpbar.de logo

Mailinglisten-Archive

[php] string=>array

[php] string=>array

Stefan Schwardt newsletter_(at)_stefan-schwardt.de
Mon, 3 Jul 2000 17:31:57 +0200


Moin Peter Kühn, moin Liste,

PK> ich habe einen string marke:
PK>   bla=blaval&blubb=blubbval&nochwas=nochwasval
PK> (und ich weiß vorher nicht was da drinsteht, compact() nutzt mir da wohl
PK> nicht viel, oder?)
was macht denn compact()?

PK> Wie stricke ich diesen String in einen Array $vals um, damit
PK>   echo $vals["bla"];     => blaval
PK>   echo $vals["blubb"];   => blubbval
PK>   echo $vals["nochwas"]; => nochwasval


Du hast doch einen eindeutigen Trenner zwischen den einzelnen
Bezeicher/Wert-Paaren ("&") und einen eindeutigen Trenner zwischen
Bezeichner und Wert ("=").

Also:

[1] $temp_all=explode("&",$input);
[2] while(list(,$one_value)=each($temp_all))
[3] {
[4]    $temp_one=explode("=",$one_value);
[5]    $vals[$temp_one[0]]=$temp_one[1];
[5] }

quick'n'dirty, bspw. bekommst Du ein Problem, wenn $input der Art
"nur_einer=einer_nur" ist, also vorher auf is_array prüfen und ggf.
nur das innere explode("=",$one_value) ausführen.

Aber so ähnlich wird's gehen.

-- 
Stefan Schwardt.




php::bar PHP Wiki   -   Listenarchive