2016-03-10 61 views
0

我需要你的幫助。我在Themeforest marketpalce上開發WordPress主題。我在我的主題上使用了Redux Framework Option面板。但Envato Reviewers軟拒絕了我的項目。對不起。我不是很好的PHP開發人員。Redux Framework全局變量問題

拒絕問題是:全局應始終在一個函數或類中,只有在主題真正需要時才應該限制性地使用&。強烈建議不要使用它們只是爲了使事情遠離全局名稱空間,它們是糟糕的編碼習慣。 http://envato.d.pr/1165K/4ZmfhB7P

我已經改變了它的功能。但它不工作。我如何解決它。

 

    function my_global_var(){ 
     global $global_var; 
     return $global_var; 
    } 

    my_global_var(); 
    echo $global_var['opt_name']; 

請建議我的解決方案。謝謝。

編輯

發現了這個解決方案。你對這個解決方案有什麼看法?

if (!function_exists('my_global_var')) { 
    function my_global_var($sm_opt_1, $sm_opt_2, $sm_opt_check){ 
     global $opt_name; 
     if($sm_opt_check) { 
      if(isset($opt_name[$sm_opt_1][$sm_opt_2])) { 
       return $opt_name[$sm_opt_1][$sm_opt_2]; 
      } 
     } else { 
      if(isset($opt_name[$sm_opt_1])) { 
       return $opt_name[$sm_opt_1]; 
      } 
     } 
    } 
} 

例子:

my_global_var('opt_val','',false); // old redux code $opt_name['opt_val']; 
my_global_var('opt_val','opt_val_2',true); // old redux code $opt_name['opt_val']['opt_val_2']; 

回答

0

你可以試試這個;

function my_global_var(){ 
    global $global_var; 
    return $global_var; 
} 

$get_my_global_var = my_global_var(); 
echo $get_my_global_var['opt_name']; 
+0

感謝您的評論。 –