国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP中全局變量global和$GLOBALS[]的區別

2024-05-04 21:53:01
字體:
來源:轉載
供稿:網友

一、舉例比較

例一:

  1. <?php    
  2.  $var1 = 1;    
  3.  function test(){    
  4.      unset($GLOBALS['var1']);    
  5.  }    
  6.  test();    
  7.  echo $var1;    
  8.  ?> 

因為$var1被刪除了,所以什么東西都沒有打印。

例二:

  1. <?php    
  2.  $var1 = 1;    
  3.  function test(){    
  4.      global  $var1;    
  5.      unset($var1);    
  6.  }    
  7.  test();    
  8.  echo $var1;    
  9.  ?> 

意外的打印了1。證明刪除的只是別名引用,其本身的值沒有受到任何的改變。

二、解釋

global $var其實就是&$GLOBALS['var'],調用外部變量的一個別名而已。

上面代碼中的$var1和$GLOBALS['var1']是指的同一變量,而不是兩個不同的變量。

PHP的全局變量和C語言有一點點不同。在C語言中,全局變量在函數中主動生效,除非被局部變量籠罩。這可能引起一些問題,有些人可能漫不經心的轉變一個全局變量。PHP中全局變量在函數中應用時必須用global申明為全局。

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

三、結論

1.$GLOBALS['var']是外部的全局變量本身

2.global $var是外部$var的同名引用或者指針。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白玉县| 洮南市| 托克托县| 社会| 额尔古纳市| 龙门县| 琼中| 莆田市| 凤凰县| 鹿泉市| 乌鲁木齐市| 拜城县| 珲春市| 盘山县| 婺源县| 阳曲县| 宕昌县| 永新县| 阿巴嘎旗| 长子县| 扬州市| 宜川县| 孝感市| 闽清县| 德清县| 迁西县| 桐柏县| 武川县| 包头市| 济源市| 城固县| 贡嘎县| 沁阳市| 湖北省| 塘沽区| 金平| 广汉市| 河东区| 正安县| 千阳县| 乌什县|