2 回答

TA貢獻(xiàn)1880條經(jīng)驗(yàn) 獲得超4個(gè)贊
因?yàn)?/p>
global $GLOBAL_TEST_TABLE;
這一行把上一行的局部變量由于重名導(dǎo)致被全局變量給覆蓋了,而全局變量是空的,所以自然不會(huì)輸出文字,如果先聲明global再賦值的話就沒(méi)問(wèn)題了。

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超8個(gè)贊
因?yàn)槟阍诤瘮?shù)中require_once "./global-test.class.php";,就相當(dāng)于把global-test.class.php中的代碼直接寫(xiě)到函數(shù)中了,相當(dāng)于這樣
function test_func(){
echo "I'm global-test.class.php ; ";
$GLOBAL_TEST_TABLE = "global_test";
global $GLOBAL_TEST_TABLE;
echo $GLOBAL_TEST_TABLE;
echo " hello";
}
這樣一來(lái)$GLOBAL_TEST_TABLE就是局部變量了,不是全局變量了,就不能 global $GLOBAL_TEST_TABLE,這樣肯定是空的,直接用$GLOBAL_TEST_TABLE就可以了。
global-test.php中正確寫(xiě)法:
<?php
require "./global-test.class.php";
function test_func(){
global $GLOBAL_TEST_TABLE;
echo " hello";
}
test_func();
?>
- 2 回答
- 0 關(guān)注
- 927 瀏覽
添加回答
舉報(bào)