php 中的靜態變數和超級全域性變數

2021-08-03 07:33:45 字數 426 閱讀 7779

靜態變數區別與其他變數之處就是,靜態變數可以在函式結束後仍然保持其值,當再次呼叫該函式時靜態變數不會被清空,在使用靜態變數時有一點需要注意的就是,不能講一表示式的結果在變數定義中賦值,只能被賦予預定義的值 如 static $a = 0;//正確   static $b = 1+5;//是不正確的會報錯

超級全域性變數:

所謂的超級全域性變數就是指php自身預定義的一些變數

如$globals    $_server   $_get  $_post    $_files   $_cookie    $_sessin   

所有的超級全域性變數的名字(除了$globals)都以單一的下劃線開始並且只能使用大寫字母。

只用全域性變數的時候需要小心,例如全域性變數$_post,$_get有可能會被攻擊,一般再是用之前要對其進行引數過濾,可以使用htmlentities函式;

PHP靜態變數和全域性變數的區別

ps 本人親測,阿里雲2核4g5m的伺服器價效比很高,新使用者一塊多一天,老使用者三塊多一天,最高可以買三年,感興趣的可以戳一下 阿里雲折扣伺服器 全域性變數作用域為定義處至原始檔結尾,儲存時期為定義後為其分配記憶體,程式退出後釋放記憶體 區域性變數作用域為區域性,儲存時期為定義後分配記憶體,退出作...

靜態變數和全域性變數

靜態資料成員和靜態函式 與類本身直接相關,而不是與類的各個物件保持關聯。通過在成員的宣告之前加上關鍵字static使得其與類關聯在一起。靜態資料成員的型別可以是算術型別 常量 引用 指標 類型別等。類似的,靜態成員函式也不與任何物件繫結在一起,它們不包含 this 指標。靜態成員函式不能宣告為 co...

靜態變數和全域性變數

一 全域性變數 1 在mymethod.h中 extern qstring real db path 2 在mymethod.cpp中 必須做這一步,這一步是為變數分配空間,如果不分配空間,使用的時候編譯不過 qstring real db path 3 在需要使用的地方,include mymet...