PHP:第一章——PHP中的變量002

預約義變量、變量的有效範圍、可變變量、靜態變量、php以外的變量php

<?php
/*****************************************************/
//預約義變量:
//$GLOBALS  —— 引用全局做用域中可用的所有變量;
//$_SERVER —— 服務器和執行環境信息
//$_GET  ——HTTP GET變量
//$_POST —— HTTP POST變量
//$_FILES ——HTTP文件上傳的變量
//$_REQUEST —— HTTP REQUEST變量
//$_ENV ——環境變量
//$_COOKIE ——httpCookies
// $argc ——傳遞給腳本的參數數目
// $argv ——傳遞給腳本的參數數組
// $php_errormsg ——前一個錯誤信息
// $HTTP_RAW_POST_DATA ——原生POST數據
// $http_response_header ——HTTP響應頭信息

/*****************************************************/
//變量的有效範圍:指變量可以被檢測到及能被使用的範圍;
//頁級全局變量在函數中沒法生效。
//例:
/*$yeji='頁級全局變量';
function myfunction(){
    var_dump(isset($yeji)); //這裏返回bool(false),沒法檢測到這個變量
}
myfunction();*/

//函數中局部變量,在函數外沒法訪問
//例2:
/*function myfun(){
    $a='函數中的變量';
}
myfun();
var_dump($a);  //輸出null,不存在$a變量*/


//使用global關鍵字進行聲明,強制變量的可見範圍:
/*$a=1;$b=2;
function sum(){
    global $a,$b;
    $b=$a+$b;
}
sum();
echo $b;//輸出3;*/

//使用$GLOBALS超全局變量數組
//$a=1;$b=5;
//function sum(){
//    $GLOBALS['b']=$GLOBALS['a']+$GLOBALS['b'];
//}
//sum();
//echo $b;
/*****************************************************/
//可變變量:
//例1:
//$v1='PHP';
//$$v1='學院';
//echo $PHP;//輸出:學院

//例2:
//$v2='seo';
//$$v2='大學';
//echo $v2.${$v2};//輸出seo大學
/*****************************************************/
//靜態變量:
/*
 1.原理:static + 變量名 + 值
2.靜態變量在內存中多了一個是否初始化標識符。
3.未有新的聲明和原有聲明不變的狀況下。靜態變量保持最後一次運行結果。
4.在函數中聲明的靜態變量,做用域只保存在函數中有效。
 */

//例1:靜態變量的定義.
//static $int=0;

//例2:靜態變量的做用域:
//經過靜態變量統計函數被調用的次數
/*function counter(){
    static $a=1;
    echo $a.'<br/>';
    $a++;
    static $a=1;
}
counter();//輸出1;
counter();//輸出2
counter();//輸出3*/

//例:
/*
$a=3;
echo $a;//輸出:3

static $a=6;
echo $a;//輸出:12.靜態變量會在編譯階段聲明提高。

$a=9;
echo $a;//輸出:9

static $a=12;
echo $a;//輸出:9
*/
/*****************************************************/
//php以外的變量:(提交表單獲得的變量)

/*login.html裏面的內容部分:
<form action="index.php" method="post">
用戶名01:<input type="text" name="username01"/>
用戶名02:<input type="text" name="username02"/>
<input type="submit" value="提交"/>
</form>
*/

/*
//index.php中的內容部分
echo $_POST['username01'];
echo $_REQUEST['username02'];
*/

?>
相關文章
相關標籤/搜索