Mailinglisten-Archive |
Michael Borchers schrieb:
> folgende funktion nutze ich um einen query_string, der für eine menüführung
> gebildet werden soll, mit globalen variablen (hier bsp mit GET) zu füllen.
>
> ihr könnt das bestimmt noch kürzer und hübscher, oder?!
>
>
>
> $_GET['foo'] = "bar";
>
> $var_str = "foo={GET->FOO}";
>
> if(preg_match("/\{(.*)\}/", $var_str, $var_arr))
> {
> $var_name = explode("=", $var_str);
>
> $var_str_repl = str_replace($var_name[0] . "=", "", $var_str);
>
> $var_expl = explode("->", $var_str_repl);
> $key = str_replace("{", "", $var_expl[0]);
> $val = str_replace("}", "", $var_expl[1]);
>
> switch($key)
> {
> case "GET":
> $query_str = $var_name[0] . "=" . $_GET[strtolower($val)];
> break;
> }
>
> echo $query_str;
> }
sehr verwirrend ...
$_GET['foo'] = "bar";
$var_str = "foo={GET->FOO}";
if (preg_match("/([a-z]+)=\{([a-z]+)->([a-z]+)\}/", $var_str, $found)) {
switch($found[2]) {
case "GET":
$query_str = $found[1] . "=" . $_GET[strtolower($found[3])];
break;
}
echo $query_str;
}
aber ungetestet ...
--
Sebastian Mendel
www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive