亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP中$GLOBALS與global的區別詳解

2024-05-05 00:07:42
字體:
來源:轉載
供稿:網友

PHP中$GLOBALS和global都可以實現全局變量的功能,所以很多人都認為global和$GLOBALS[]只是寫法上面的差別,其實不然。$GLOBALS 是一個超級全局變量,其實是一個數組,而global 則是一個聲明全局變量的關鍵字!

一、超全局變量$GLOBALS

PHP超全局變量有很多,如下的都屬于超全局變量(Superglobal):

$GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKIE,$_SESSION,$_REQUEST,$_ENV。

官方說明:

$GLOBALS — 引用全局作用域中可用的全部變量。

一個包含了全部變量的全局組合數組。變量的名字就是數組的鍵。

即出現過的全局變量,就可以通過$GLOBALS這個數組取得。

  • $GLOBALS['var'] 是外部的全局變量$var本身。
  • global $var 是外部$var的同名引用或者指針。(錯誤:是個別名引用而已,非指針?。。。?/li>

PHP生命周期中,定義在函數體外部的所謂全局變量,函數內部是不能直接獲得的。

$foo="Example content";test();function test(){  $foo="local variable";  echo '$foo in current scope: '.$foo."<br>";  echo '$foo in global scope: '.$GLOBALS["foo"]."<br>";}

如上的例子,要訪問外部的$foo必須使用 $GLOBALS 數組。對于通過include文件進來的外部全局變量也適用。

php中global也有這樣的功能,它和$GLOBALS的區別在于:

global在函數產生一個指向函數外部變量的別名變量,而不是真正的函數外部變量。

$GLOBALS[]確確實實調用是外部的變量,函數內外會始終保持一致。

對于類中的成員變量,類中函數必須使用$this->的方式訪問,不能用$GLOBALS方式:

global的作用是定義全局變量,但是這個全局變量不是應用于整個網站,而是應用于當前頁面,包括include或require的所有文件。

二、實例講解

function t1(){  global $var1,$var2;  $var2=&$var1;}function t2(){  $GLOBALS['var3']=&$GLOBALS['var1'];}$var1=5;$var2=$var3=0;t1();print $var2."/n";t2();print $var3."/n";

執行結果為:

0
5

為什么不是2個5而是1個0和1個5呢?再修改一下例子:

function t1(){  global $var1;  $var1=2;  unset($var1);}function t2(){  $GLOBALS['var1']=3;  unset($GLOBALS['var1']);}$var1=1;t1();print $var1."/n";t2();print $var1."/n";

執行結果只輸入一個2;

1、$GLOBALS是由所有已定義全局變量自動形成的數組。變量名就是該數組的索引。即$GLOBALS['var1']與函數外部的變量$var1是同一個變量,所以將$GLOBALS['var1'] 刪除后,該變量已不存在,所有無法輸出了。

注:$GLOBALS是自動全局變量。這意味著它在所有的腳本中都有效。在函數或方法中不需要使用 global $GLOBALS;來訪問它。

2、"global $var1;"是產生了函數外部$var1的別名變量"$var1",它不是真正的函數外部變量,他只存在于函數的內部,所以即使在函數內將別名變量刪除也不會影響外面的變量,但是可以修改函數外部變量的值。

或許有的人總想知道這個或那個的區別:

在php程序,包括其他程序的學習中,自己動手實驗,根據結果加上的思考,有的時候比上網查找可能會來得更快一些,更準確一些。下面我們來講一下,php在全局范圍內訪問變量要怎么辦?

例一:global定義全局變量。

function test_global(){  global $var1;  $var1='ok';  unset($var1);}test_global();$var2=&$var1;unset($var1);echo $var2;

先不給出結果,自己運行一下程序。函數內部的變量可以訪問到了。從結果可以看出,unset只是斷開變量名與變量值連接,并沒有馬上銷毀變量的值,而且在函數內部定義的全局變量,實際在外部只是使用了函數內部的別名而已,所以我們在外面依然可以訪問$var1。

例二:$GLOBALS在函數內部訪問函數外面定義的變量。

$codetc='out';function ff(){  echo $GLOBALS['codetc'];}ff();

直接在函數內部使用$codetc是會出錯的。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久天堂电影网| 狠狠操狠狠色综合网| 国产精品极品尤物在线观看| 欧美日韩一区二区在线播放| 久久视频在线观看免费| 亚洲国产精品专区久久| 日韩精品久久久久久久玫瑰园| 久久免费精品日本久久中文字幕| 91精品国产自产在线观看永久| 国产精品高清在线观看| 国产精品1区2区在线观看| 国产精品一区二区电影| 亚洲欧美精品一区| 国产日本欧美一区二区三区在线| 日韩精品日韩在线观看| 国产精品视频一区二区三区四| 欧美性受xxxx黑人猛交| 亚洲视频999| 久久噜噜噜精品国产亚洲综合| 久久精品亚洲一区| 日韩免费观看网站| 91九色精品视频| 久久夜色精品国产亚洲aⅴ| 亚洲aⅴ日韩av电影在线观看| 久久久国产精品一区| 91av视频在线播放| 欧美成aaa人片免费看| 欧美日韩中文字幕综合视频| 国产精品久久久久免费a∨大胸| 欧美亚洲另类视频| 国产精品女人网站| www.欧美三级电影.com| 亚洲免费中文字幕| 亚洲欧美日韩国产中文专区| 色视频www在线播放国产成人| 91国偷自产一区二区三区的观看方式| 日韩欧美在线观看视频| 欧美精品18videos性欧| 欧美成人免费一级人片100| 久久青草福利网站| 亚洲最新视频在线| 97国产suv精品一区二区62| 欧美激情一区二区三区久久久| 国产亚洲精品美女| 亚洲成人久久一区| 亚洲91av视频| 午夜精品一区二区三区在线视频| 日韩中文字幕免费视频| 久久久久久有精品国产| 国产精品v日韩精品| 成人妇女免费播放久久久| 亚洲精品不卡在线| 亚洲已满18点击进入在线看片| 日韩在线视频中文字幕| 国产精品永久免费| 1769国产精品| 国产精品狠色婷| 欧美老女人性生活| 亚洲最新视频在线| 韩国三级电影久久久久久| 亚洲第一av网| 日韩高清电影免费观看完整| 国产精品一区二区在线| 欧美性感美女h网站在线观看免费| 亚洲精品视频网上网址在线观看| 国产做受69高潮| 久久久久久久久久久亚洲| 亚洲欧美在线磁力| 日韩最新av在线| 日韩精品www| 色青青草原桃花久久综合| 国产亚洲精品久久| 欧美日韩成人网| 亚洲国产一区二区三区四区| 韩国国内大量揄拍精品视频| 欧美激情亚洲另类| 国产欧美精品va在线观看| 欧美国产日韩一区| 日韩视频第一页| 国产精品igao视频| 日韩精品有码在线观看| 亚洲人av在线影院| 在线视频欧美日韩精品| 日韩专区中文字幕| 欧美成人精品在线观看| 中文字幕国内精品| 91精品国产自产在线观看永久| 久久成人这里只有精品| 久久久久久久久91| 不卡av在线网站| 国产精品美女主播在线观看纯欲| 日韩av网址在线| 日韩av高清不卡| 亚洲sss综合天堂久久| 精品爽片免费看久久| 亚洲欧美日韩一区二区在线| 97国产精品视频人人做人人爱| 亚洲精品久久久久久久久久久久| 欧美激情一级精品国产| 国产精品嫩草视频| 国产日韩在线精品av| 亚洲第一视频在线观看| 欧美日韩在线视频观看| 亚洲欧美日韩中文视频| 欧美成人精品h版在线观看| 欧美特黄级在线| 欧美理论电影在线观看| 91久久久国产精品| 国产精品久久久久一区二区| 国产在线拍揄自揄视频不卡99| 97在线精品国自产拍中文| 国产欧美日韩综合精品| 在线观看中文字幕亚洲| 日日噜噜噜夜夜爽亚洲精品| 久久精品免费播放| 日本在线观看天堂男亚洲| 亚洲精品久久久一区二区三区| 一道本无吗dⅴd在线播放一区| 日韩av黄色在线观看| 日本一区二区三区四区视频| 综合欧美国产视频二区| 欧美亚洲一级片| 久久久精品在线观看| 在线视频精品一| 成人www视频在线观看| 日韩av大片免费看| 亚洲一级片在线看| 高潮白浆女日韩av免费看| 亚洲色图五月天| 亚洲欧洲在线观看| 久久亚洲精品小早川怜子66| 欧美精品在线看| 欧美日韩国产成人在线观看| 欧美日韩高清区| 日韩欧美在线视频日韩欧美在线视频| 国产成人精品在线观看| 亚洲国产精品电影| 日韩在线小视频| 久久久免费精品| 热久久这里只有| 亚洲福利视频在线| 在线亚洲欧美视频| 日韩在线免费观看视频| 久久久精品日本| 亚洲精品一区中文| 久久深夜福利免费观看| 中文字幕日韩综合av| 日韩在线观看免费全集电视剧网站| 91色视频在线观看| 中文字幕欧美视频在线| 日韩最新在线视频| 亚洲第一天堂无码专区| 亚洲成人黄色在线观看| 亚洲国产精品资源| 久久久久久久一区二区| 91在线国产电影| 国产精品久久久久久久久借妻| 欧美激情一级精品国产| 久久久久久久久国产精品| 热re99久久精品国产66热| 4k岛国日韩精品**专区| 国产色视频一区| 美女性感视频久久久| 亚洲国产日韩欧美在线图片|