2010-10-29 136 views
0

動態的全球信息我設置以下方式一些全局配置變量:如何訪問一個靜態函數

$yaml = file_exists('config.yml') ? Spyc::YAMLLoad('config.yml') : array(); 

$defaults = array(
    'hostname' => 'localhost', 
    'base_uri' => '/wag/' 
); 

$config = array_merge($default, $yaml); 

現在我想定義一個函數base_url($https)返回一個基礎URL。方法正文可能只是:

return 'http' . ($https ? 's' : '') . '//' . $config['hostname'] . $config['base_uri']; 

但我不知道如何訪問這些默認變量後,已被創建。我將如何去做這件事。我也願意找到另一種方法來實現我期待的最終目標(具有配置變量/常量以及一些實用程序函數,以幫助我根據配置數據來合成值)。

回答

1

創建一個配置類,定義類變量並使用get/set方法來存儲和檢索參數。

實施例:

class Config 
{ 
    private $_hostname = "localhost"; 
    private $_baseUri; 

    public function __construct($_hostname, $baseUri) 
    { 
     //initialise vars 
    } 

    public function getHostname() 
    { 
     return $this->_hostName; 
    } 

    public function setHostname($hostName) 
    { 
     $this->_hostName = $hostName; 
    } 
} 
相關問題