当在函数里通过require_once包含另外php文件。
而另外php文件包含了另外php文件,而该php文件的函数需要另外的php文件。
例子:
installment_maintenance_submit.php文件里downloadZip函数在内部包含了rebootTipsFunc.php
function downloadZip(){ require_once realpath(dirname(__FILE__)."/lib/rebootTipsFunc.php"); $downloadUrl = getWebUrlInfo("download_zutai_url"); }
rebootTipsFunc.php文件
require_once realpath(dirname(__FILE__)."/../include/global_config.php"); require_once realpath(dirname(__FILE__)."/../include/web_auth_paramsdesc.php"); require_once realpath(dirname(__FILE__)."/../include/default_web_config.php"); require_once realpath(dirname(__FILE__)."/../include/global_feature_config.php"); function getWebUrlInfo($key){ // echo $key; global $g_cfgWebArr; // print_r($g_cfgWebArr); // global $g_web_paramsdesc; global $g_default_cfgWebArr; // print_r($g_default_cfgWebArr); if(array_key_exists($key,$g_cfgWebArr)){ return $g_cfgWebArr[$key]; }else{ return $g_default_cfgWebArr[$key]; } }
函数 getWebUrlInfo 里调用了global_config.php文件里的数组$g_cfgWebArr,在函数里用global里用全局变量指定。
用上述方法指定后,会出现在函数里getWebUrlInfo的$g_cfgWebArr变量无法被识别的情况。
将installment_maintenance_submit.php里require_once放在函数外部时,则可以正常使用。变量$g_cfgWebArr也可以正常使用
require_once realpath(dirname(__FILE__)."/lib/rebootTipsFunc.php"); function downloadZip(){ $downloadUrl = getWebUrlInfo("download_zutai_url"); }