concordo cmq nel caso ti basta definire la variabile globale all'inerno della funzione per averla disponibile anche al di fuori ti posto un esempio
lo scopo della funzione è includere un file in cui sono definiti i valori di un array $lang e renderli disponibili allo script
	Codice PHP:
	
function inc_lang($filename,$requester ='')
{
    global $phpms_root_path, $module_root_path, $userdata, $config, $lang, $default, $phpEx;
    
    //
    //Check for language file into core folder
    //
    if( $requester == 'core')
    {
    $filepath = $phpms_root_path;
        //check in user defined language
        if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $userdata["lang"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $user["lang"];
        }
        //check for user browser  language 
        else if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'];
        }
        //check for script defined language
        else if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $config["lang"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $portal_config["lang"];
        }
        //check for default language folder, this is for first installation only
        else if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $default["language"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $default["language"];
        }
        //
        //If not found in PhpMS folder get an error
        //
        else
        {
        message_die(GENERAL_ERROR, "002_not_load_language", "Language_File_not_found");
        }
    }
    //
    //Check for language file into module folder
    //
    else
    {
    $filepath = $module_root_path;
        //check in user defined language
        if( file_exists($module_root_path . $default["language_folder"] . '/' . $userdata["lang"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $user["lang"];
        }
        //check for user browser  language 
        else if( file_exists($module_root_path . $default["language_folder"] . '/' . $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'];
        }
        //check for script defined language
        else if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $config["lang"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $portal_config["lang"];
        }
        //check for default language folder, this is for first installation only
        else if( file_exists($phpms_root_path . $default["language_folder"] . '/' . $default["language"] . '/' . $filename . '.' . $phpEx))
        {
        $script_lang = $default["language"];
        }
        //
        //If not found in module folder get an error
        //
        else
        {
        message_die(GENERAL_ERROR, "002_not_load_language", "Language_File_not_found");
        }
    }
    //
    //Ok now including language file
    //
    include($filepath . $default["language_folder"] . '/' . $script_lang . '/' . $filename . '.' . $phpEx);
} 
 
ma forse ho divagato un attimino