我對php變量範圍感到困惑。 如:php變量範圍
while(true){
$var = "yes , it is a test!";
}
printf($var)
的$var
在while語句定義的範圍,我們怎麼能得到它外面的範圍是什麼?我無法找到有關文件的解釋。
我不知道PHP如何處理它的範圍。
我對php變量範圍感到困惑。 如:php變量範圍
while(true){
$var = "yes , it is a test!";
}
printf($var)
的$var
在while語句定義的範圍,我們怎麼能得到它外面的範圍是什麼?我無法找到有關文件的解釋。
我不知道PHP如何處理它的範圍。
如果你這樣做while(true)
你會不會走出的同時,所以不會有問題。但是,如果你將有一個真正的表達,這樣的事情(這是一個無用的例子,我知道)
$i=0
while($i<10){
$var = "yes , it is a test!";
$i++;
}
printf($var);
將只是工作。 沒有特殊的「while」變量作用域,printf會打印你的字符串。檢查:http://php.net/manual/en/language.variables.scope.php
Loop在PHP中沒有任何範圍。變量在循環之外是簡單可用的。
只是echo
外循環;
echo $var;
while
不是一個函數。變量的範圍指functions
和classes
中的變量
在PHP中,while循環不會創建新的scope。因此,將在功能
可用於完整的答案查看文檔:
注意:不同的PHP版本在$ GLOBALS,$ _SERVER($ HTTP_SERVER_VARS [deprecated])和$ _SESSION上表現不同。請檢查。舊的PHP頁面並不總是向上兼容。你應該檢查一下。
'while(true)'是一個無限循環... – atlavis 2011-04-12 07:51:02
請回頭查看您的舊問題。如果有良好的解決方案,請使用綠色的「檢查」將它們標記爲已接受。如果沒有(我懷疑),請考慮回答你自己的問題,最後如何解決問題。此外,請嘗試檢查您的格式。 – Nanne 2011-04-12 07:52:06
這可能是一個有用的起點:http://php.net/manual/en/language.variables.scope.php – 2011-04-12 07:53:54