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