<?php
include 'global.php';
class Config {
public static function login($path=null){
if($path){
$config=$GLOBALS['config'];
$path=explode('/',$path);
foreach($path as $bit ) {
if($config[$bit]){
$config=$config[$bit];
}
}
return $config;
}
return false;
}
}
,全局数组是
<?php
session_start();
$GLOBALS['config']=array(
'mysql'=>array(
'host'=>'localhost',
'username'=>'root',
'password'=>'',
),
'session'=>array(
'username'=>'user',
'user_logged'=>'logged_in'
),
'status'=>array(
'login'=>'true',
)
);
spl_autoload_register( function($class){
include 'classes/' .$class. '.php';
});
我需要访问全局数组中的元素。但我不明白他们是如何做到的......有人可以帮助我吗?如何为Web应用程序设计选择设计模式?
答案 0 :(得分:0)
PHP有一个名为$ GLOBALS的全局值数组;这&#34;超全球&#34;变量随处可用,无需声明。代码引用$ GLOBALS [&#39; config&#39;]初始化并读取此值。
http://php.net/manual/en/reserved.variables.globals.php
在非全局上下文(即函数内)中使用$ GLOBALS [&#39; config&#39;]的替代方法是使用global关键字将其拉入范围:
public static function login($path=null){
global $config;
if($path){
$path=explode('/',$path);
foreach($path as $bit ) {
if($config[$bit]){
$config=$config[$bit];
}
}
return $config;
}
return false;
}