views:

82

answers:

2

I have set an array in my config file that I use global in my functions.
This works fine, but now I want to pass the name of this array as a @param in my function.

// in config file:
$album_type_arr = array("appartamento", "villa");   

global $album_type_arr; // pull in from db_config
echo $album_type_arr[0];

function buildmenu($name) {
    $test = global $name . "_arr";
    echo $test[0];
}
buildmenu("album_type");
+4  A: 

You're looking for variable variables:

http://www.php.net/manual/en/language.variables.variable.php

function buildmenu($name) {
    $test = $name . "_arr";
    global ${$test};
    echo ${$test}[0];
}
Kevin
A: 

You can use "variable variables". This works:

function buildmenu($name) {
   global ${$name. '_arr'};
   $test = ${$name. '_arr'};
   echo $test[0];
}
Nicolò Martini