php中變數的定義
① php預定義變數有哪些
PHP 提供了大量的預定義變數。這些變數將所有的外部變數表示成內建環境變數,並且將錯誤信息表示成返回頭。
預定義變數又叫超全局變數,包括:(推薦學習:PHP視頻教程)
$_GET、$_POST、$_SERVER、$_REQUEST、$GLOBALS、$_COOKIE、$_SESSION、$_ENV、$_FILES 、$php_errormsg 、$HTTP_RAW_POST_DATA、$http_response_header、$argc、$argv
預定義變數的作用域稱為「超全局作用域」:全局作用域 + 局部作用域的總和(函數內外全都可用)
超全局變數都是數組!
例如,$_GET變數(數組):
get這個詞,常常出現在這里:<form action=」abc.php」 method=」get」 >.....</form>
這叫做「表單以get方式提交數據」
則$_GET這個預定義數組變數,就是指以這種方式提交的所有數據的集合(數組)
對應來說,也可以以post方式提交數據
注意:get這個詞,似乎沒有中文翻譯。
實際上,在網頁中,以get方式提交數據有多種形式:
形式一:
<form action=」abc.php」 method=」get」 >
項目1: <input type=」text」 name=」uName」 />
項目2: <input type=」password」 name=」uPswd」 />
<input type=」submit」 value=」提交」 />
</form>其作用是:用戶填寫表單數據,並提交後,會將數據發送(提交)給頁面abc.php,其實也可以理解為「打開」該網頁(abc.php),還可以理解為「請求」該網頁(abc.php)
形式二:
<a href=」abc.php?uName=test1&uPswd=123」 > 文字。。</a>其作用是:用戶點擊鏈接後,會將數據發送(提交)給頁面abc.php,其實也可以理解為「打開」該網頁(abc.php),還可以理解為「請求」該網頁(abc.php),這種請求也是get請求
形式三:
<script>
location.href = 「abc.php?uName=test1&uPswd=123」; //利用location對象的屬性href
</script>其作用是:當該行語句執行的時候(通常其實是在函數中),會將數據發送(提交)給頁面abc.php,其實也可以理解為「打開」該網頁(abc.php),還可以理解為「請求」該網頁(abc.php),這種請求也是get請求
形式四:
<script>
location.assign( 「abc.php?uName=test1&uPswd=123」); //利用location對象的方法assign()
</script>其作用是:當該行語句執行的時候(通常其實是在函數中),會將數據發送(提交)給頁面abc.php,其實也可以理解為「打開」該網頁(abc.php),還可以理解為「請求」該網頁(abc.php),這種請求也是get請求
② php 定義變數
<?php//常量聲明!defined("PI") or define("PI", 3.14);//變數聲明$var = value; //value可以為值類型、引用類型、NULL、布爾類型、資源類型?>
③ PHP項目如何定義一個變數,在任何頁面都可以來回修改
辦法只有兩個,意識用內存緩存,如memcached之類的,二是用文件緩存,把變數存入一個文件每次讀取,修改後寫入。
如果是個人全局的,可以寫入session或cookies,如果是任何人都看到一樣的,那就只能用上面的內存或文件緩存了。
④ php怎麼定義變數
c 是錯的,因為第一個符號不能用數字
⑤ 什麼是PHP變數
常量是一個簡單值的標識符(名字)。如同其名稱所暗示的,在腳本執行期間該值不能改變(除了所謂的魔術常量,它們其實不是常量)。常量默認為大小寫敏感。按照慣例常量標識符總是大寫的。(更多PHP知識相關推薦閱讀:什麼是PHP開發?PHP開發都用什麼工具?)
常量名和其它任何 PHP 標簽遵循同樣的命名規則。合法的常量名以字母或下劃線開始,後面跟著任何字母,數字或下劃線。用正則表達式是這樣表達的:[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*
注: 在這里,字母是 a-z,A-Z,以及從 127 到 255(0x7f-0xff)的 ASCII 字元。
和 superglobals 一樣,常量的范圍是全局的。不用管作用域就可以在腳本的任何地方訪問常量。有關作用得更多信息請閱讀手冊中的變數范圍。
語法
可以用 define() 函數來定義常量。一個常量一旦被定義,就不能再改變或者取消定義。
常量只能包含標量數據(boolean,integer,float 和 string)。
可以簡單的通過指定其名字來取得常量的值,不要在常量前面加上 $ 符號。如果常量名是動態的,也可以用函數 constant() 來讀取常量的值。用 get_defined_constants() 可以獲得所有已定義的常量列表。
注: 常量和(全局)變數在不同的名字空間中。這意味著例如 TRUE 和 $TRUE 是不同的。
如果使用了一個未定義的常量,PHP 假定你想要的是該常量本身的名字,如同你用字元串調用它一樣(CONSTANT 對應 "CONSTANT")。此時將發出一個 E_NOTICE 級的錯誤。參見手冊中為什麼 $foo[bar] 是錯誤的(除非你事先用 define() 將 bar 定義為一個常量)。如果你只想檢查是否定義了某常量,用 defined() 函數。
常量和變數不同:
常量前面沒有美元符號($);
常量只能用 define() 函數定義,而不能通過賦值語句;
常量可以不用理會變數范圍的規則而在任何地方定義和訪問;
常量一旦定義就不能被重新定義或者取消定義;
常量的值只能是標量。
以上來自上海優就業老師進行的總結,關於上海IT培訓PHP開發更多了解:網頁鏈接
⑥ 誰知道PHP中靜態變數是什麼意思急!
靜態變數,簡單的說,就是一種在特定范圍內一直存在的變數,你可以把全局變數當作一種靜態變數,它的值在代碼運行期間一直存在。
通常來說,靜態局部變數大多用於特殊場合里,比如,當在某函數中,希望每次運行函數時,都使用上次函數的結果,此時除使用全局變數外,就可以使用靜態變數。
以下是關於靜態局部變數特點的一些資料說明:
1.不會隨著函數的調用和退出而發生變化,不過,盡管該變數還繼續存在,但不能使用它。倘若再次調用定義它的函數時,它又可繼續使用,而且保存了前次被調用後留下的值。
2.靜態局部變數只會初始化一次。
3.靜態屬性只能被初始化為一個字元值或一個常量,不能使用表達式。即使局部靜態變數定義時沒有賦初值,系統會自動賦初值0(對數值型變數)或空字元(對字元變數);靜態變數的初始值為0。
4.當多次調用一個函數且要求在調用之間保留某些變數的值時,可考慮採用靜態局部變數。雖然用全局變數也可以達到上述目的,但全局變數有時會造成意外的副作用,因此仍以採用局部靜態變數為宜。
PHP里,定義靜態變數使用static 進行修飾。比如
static$avar=0;
⑦ php如何實現真正的全局變數
首先明確一點 php的全局變數可以分為
1.自定義的全局變數
通過關鍵字 global 聲明變數為全局變數
$a =1;function bb(){ global $a;}
2.系統自帶的全局變數
php系統自帶的全局變數也有很多 ,也是可以去使用的,例如:$_SERVER (主要存儲http 請求相關的信息)$_REQUEST (默認情況下包含了 $_GET,$_POST 和 $_COOKIE 的數組)$_POST (主要是http POST 請求的參數)$_GET (主要是http GET 請求的參數)$_FILES (主要是http 文件相關的參數)$_ENV (是一個包含伺服器端環境變數的數組)$_COOKIE (主要是存儲瀏覽器臨時緩存的信息)$_SESSION (主要是php 服務 會話存儲信息)