2014-04-04 89 views
-1

我想盡快開始新的網站。我真的不知道該怎麼解釋,但我不知道該選什麼。靜態「核心」類VS全局關鍵字

我應該使用global.php,在我做的變量,我用一個全球性的關鍵詞,讓這樣的事情:

global.php:

<?php 
    $data = 'hello world'; 
?> 

其他文件:

<?php 
global $data; 
echo $data; 
?> 

還是我使用一個靜態的核心類:

core.php中:

<?php 

class Core 
{ 
    public static $data; 

    public static function init() 
    { 
    $data = 'hello world'; 
    } 
} 

?> 

其他文件:

<?php 
    echo Core::$data; 
?> 

因爲我也有告知儘量避免全球,但我聽到一些人我的'靜態方法被調用辛格爾頓,它要麼是不是很大。我不明白爲什麼不,爲什麼有人能給我一個解釋?

+0

爲什麼你需要全球變量?唯一可能是全局或單例的是Database-obj。或類似的東西。 (我的想法!)。你想要保存什麼? –

+0

我想有一個文件中的某個類的對象,並在另一個文件中使用它們。這是一個快速的例子,因爲我目前沒有例子。 –

回答

0

這個問題有點開放和基於意見,但這裏有。

我會解決這個問題的方法是在你的類中創建不同的常量。像這樣:

class MyClass 
{ 
    const MYCONSTANT = 'constant value'; 

    function showConstant() { 
     echo self::MYCONSTANT. "\n"; 
    } 
} 

在這裏,您可以定義SQL的密碼,網站網址等作爲需要在您的網站大多數內容將不依賴於它們應該被限制的全局變量的數目。標題,內容,數據等將從視圖變爲視圖,因此不應以任何方式成爲全局變量。