日期:2014-11-26 分類:網(wǎng)絡(luò)技術(shù) 瀏覽:9177 來源:邦明科技
按照一般程序編寫的思路,函數(shù)外的變量應(yīng)該是可以看成全局變量的,如果是全局變量的話,那么在函數(shù)中調(diào)用是完全沒有問題的。
看來php和我們傳統(tǒng)的思路有點問題,那么php中全局變量是怎么的呢,我特意編寫代碼試試看。
1.在外部用global定義直接輸出:
global $mytext;
$mytext=”nihao”;
function chao_echo(){
echo $mytext;
}
chao_echo();
結(jié)果:沒有輸出;
2.用GLOBALS數(shù)組輸出:
global $mytext;
$mytext=”nihao”;
function chao_echo(){
echo $GLOBALS['mytext'];
}
chao_echo();
結(jié)果:輸出正常
3.在函數(shù)內(nèi)全局申明函數(shù)外的變量:
$mytext=”nihao”;
function chao_echo(){
global $mytext;
echo $mytext;
echo $GLOBALS['mytext'];
}
chao_echo();
結(jié)果:直接輸出或者用GLOBALS全局?jǐn)?shù)組輸出都行。
4.將函數(shù)外部變量用參數(shù)傳遞進(jìn)去:
$mytext=”nihao”;
function chao_echo($mytext){
echo $mytext;
}
chao_echo($mytext);
結(jié)果:可以輸出。
總結(jié)一下,php中,函數(shù)內(nèi)引用函數(shù)外的變量三種方法:
1.函數(shù)外global聲明,函數(shù)內(nèi)使用$_GLOBALS數(shù)組引用。
2.函數(shù)內(nèi)global聲明,函數(shù)內(nèi)$_GLOBALS數(shù)組或者直接引用。
3.在調(diào)用函數(shù)的時候用一個參數(shù)傳遞。