基本格式
<?
$v1=1;
echo $v1;
echo "<br>";
?>
一、變量的命名規則:
1.構成:字母、數字、下劃線
2.開頭:字母或下劃線
3.注意:變量名不要跟系統中的關鍵字重複
二、行業規則
通常、儘量將變量命名爲“見名知意”
駱駝命名法(小駝峯命名法):第一個單詞首字母小寫,其餘單詞首字母大寫
帕斯卡命名法(大駝峯命名法):所有單詞都首字母大寫
三、變量的4種基本操作
1.賦值
$v1=10;
2.取值
3.判斷變量isset()
isset($變量名);
特殊賦值
$n1=null; //null是一個特殊的數據,表示沒有數據
isset($n1); //此時判斷爲false
4.刪除/銷燬變量unset()
unset($變量名);
四、變量傳值
$v1=10;
$v2=$v1;
引用傳值
$v2=&$v1;
五、預定義變量
5.1 $_GET
代表瀏覽器表單通過“get”方式提交的數據(集),可以稱爲“get數據”
$_GET變量裏面會“自動存儲”(保存/裝載)提交到某個文件中的GET數據
從帶有 GET 方法的表單發送的信息,對任何人都是可見的(會顯示在瀏覽器的地址欄),並且對發送信息的量也有限制。
實例
form.html 文件代碼如下:
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<form action="welcome.php" method="get">
名字: <input type="text" name="fname">
年齡: <input type="text" name="age">
<input type="submit" value="提交">
</form>
</body>
</html>
當用戶點擊 "Submit" 按鈕時,發送到服務器的 URL 如下所示:
http://www.runoob.com/welcome.php?fname=Runoob&age=3
"welcome.php" 文件現在可以通過 $_GET 變量來收集表單數據了(請注意,表單域的名稱會自動成爲 $_GET 數組中的鍵):
歡迎 <?php echo $_GET["fname"]; ?>!<br>
你的年齡是 <?php echo $_GET["age"]; ?> 歲。
可以用來賦值
$name=$_GET["fname"];
5.2 $_POST
預定義的 $_POST 變量用於收集來自 method="post" 的表單中的值。
從帶有 POST 方法的表單發送的信息,對任何人都是不可見的(不會顯示在瀏覽器的地址欄),並且對發送信息的量也沒有限制。
註釋:然而,默認情況下,POST 方法的發送信息的量最大值爲 8 MB(可通過設置 php.ini 文件中的 post_max_size 進行更改)。
實例
form.html 文件代碼如下:
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<form action="welcome.php" method="post">
名字: <input type="text" name="fname">
年齡: <input type="text" name="age">
<input type="submit" value="提交">
</form>
</body>
</html>
當用戶點擊 "提交" 按鈕時,URL 類似如下所示:
http://www.runoob.com/welcome.php
"welcome.php" 文件現在可以通過 $_POST 變量來收集表單數據了(請注意,表單域的名稱會自動成爲 $_POST 數組中的鍵):
歡迎 <?php echo $_POST["fname"]; ?>!<br>
你的年齡是 <?php echo $_POST["age"]; ?> 歲。
小技巧:
(1)表單提交給自己的時候,爲避免用戶在不輸入值而直接提交表單時出錯,可以在$_GET或$_POST調用前增加一個包含isset()的if判斷
<?php
if(isset($_POST['fname'])
{
$n1=$_POST['fname'];
}
?>
(2)表單提交給自己的時候,變量初始化用賦值空字符,可以避免在未獲得數值時,表單出錯
<?php
$n1="";
下面是表單操作
?>
5.3 $_REQUEST
既能收到$_GET傳來的數據,$_POST傳來的數據
通常表單只有一種提交形式,要麼get,要麼post
但可以通過以下形式同時發出get和post數據
<form action="eee.php?id=1&usrname=zhang" method="post">
<input type="text"name="num1" value="<?pehp echo $n1; ?>" >//這裏是表單內容
//action中?後面的是get數據
//表單中的是post數據
</form>
四、$_SERVER變量
代表任何一次請求中,客戶端或服務器端的一些基本信息或系統信息
常用有:
PHP_SELF //表示當前請求的網頁地址(不含域名部分)
SERVER_NAME //表示當前請求的服務器名
SERVER_ADDR //表示當前請求的服務器IP地址
DOCUMENT_ROOT //表示當前請求的網站物理路徑(apache 設置站點時那個)
REMOTE_ADDR //表示當前請求的客戶端的IP地址
SCRIPT_NAME //表示當前網頁地址
舉例:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
file_put_contents("$ip.txt",$ip);
?>
六、可變變量
含義:變量名本身又是一個變量的變量
$v1=10;
echo $v1; //輸出10
$str="v1";
echo $$str;//輸出10
=============================================================================
var_dump() 函數用於輸出變量的相關信息。
var_dump() 函數顯示關於一個或多個表達式的結構信息,包括表達式的類型與值。數組將遞歸展開值,通過縮進顯示其結構。
PHP 版本要求: PHP 4, PHP 5, PHP 7
語法
void var_dump ( mixed $expression [, mixed $... ] )
參數說明:
- $expression: 你要輸出的變量。
返回值
沒有返回值。
實例
<?php
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
?>
輸出結果爲:
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
}
實例
<?php
$b = 3.1;
$c = true;
var_dump($b, $c);
?>
輸出結果爲:
float(3.1)
bool(true)