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