php 全局变量问题

当在函数里通过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"); }
上一篇:Android开发-动态布局小记


下一篇:细说ES7 JavaScript Decorators