2013-10-21 135 views
1

全局聲明的PHP變量存儲在內存中嗎? 如果我們聲明一個變量$ test = 0;外部功能。在PHP中,全局聲明的變量存儲在哪裏?

其中此變量和值存儲在內存中。有像堆,堆棧,代碼段和與每個程序相關的數據段等內存。在PHP中,內存如何管理PHP程序?..變量如何在PHP中處理?...

+2

你有什麼特別的理由需要你知道嗎?一般來說,你聲明的任何變量將被存儲爲數據,不管它是否是全局變量 –

+0

這是一個面試問題。問題是'執行php程序時全局變量存儲在哪裏?' – user2609417

+0

今天這個面試問題是相當流行:http://stackoverflow.com/questions/19488318/where-is-global-variables-like-global-post-etc-stored –

回答

0

全局變量存儲在$ GLOBALS關聯數組中。

,如果你這樣做:

$var="global"; 

function foo(){ 
    $var="local"; 
    echo $GLOBALS['var']; 
    echo $var; 
} 

它將打印 「全局」,然後選擇 「本地」。

+1

我想你誤解了這個問題,OP想知道PHP _internally_如何處理全局變量 –

+0

是的。我想知道如何在PHP內部處理變量。達米安皮爾西先生是正確的 – user2609417

+0

哦,先謝謝我的回答^^' – Naryl