es geht darum, dass ich ein Array von Varialennamen an eine Funktion übergebe, die mit diesen Variablen arbeitet. Am Ort der Übergabe ist nicht klar, ob diese Variablen existieren, daher werden nur die Namen der Variablen übergeben und nicht die Werte. Damit ich in der Funktion auf die Werte zugreifen kann, arbeite ich mit $GLOBALS. Leider haut dies nicht so hin, wie ich es gerne hätte.
Ich habe das Problem mal auf minimalen Code reduziert, dass es nachvollziehbar ist:
Code: Alles auswählen
<?
$art_id = 55;
show_value("art_id");
function show_value($value)
{
if (isset($GLOBALS[$value]))
{
echo $value . ": " . $GLOBALS[$$value];
}
else
{
echo $value . " doesn't exist";
}
}
?>
Notice: Undefined variable: art_id in /Applications/MAMP/htdocs/xxx/test.php on line 8
art_id doesn't exist
Leider habe ich keinen Plan, wieso das nicht geht und vielleicht kannt mir da ja jemand helfen. Im Idealfall sollte er meiner Meinung nach den Wert anzeigen.
Mit global allein kann ich nicht arbeiten, da ich in meiner tatsächlichen Funktion nicht nur eine Variable, sondern mehrere nutze.
Phil