PHP入門 - 常量和變數
阿新 • • 發佈:2018-12-18
- 目錄
常量
命名一個常量 :
define(常量名, 常量值);
define('VERSION_NAME', '1.0.0');
var_dump(VERSION_NAME); // string(5) "1.0.0"
echo '版本號為:' . VERSION_NAME; // 版本號為:1.0.0
- 常量值只能為標量 ;
- 常量名也可以寫成小寫 , 但是一般為大寫 ;
- 常量名可以不加引號 , 但是一般加引號 ;
- 在字串中呼叫常量的時候 , 必須寫在引號外面 ;
變數
可變變數 :
- 已經宣告的變數前面 , 再加上變數符 .
$s1 = 's2';
// 此處命名的s2一定要和上方引號裡的字元s2一樣
$s2 = 's2222222';
echo $s1; // s2
echo $$s1; // s2222222
// 還可以有這種操作
$test1 = 'test2';
$test2 = 'test3';
$test3 = 'test4';
$test4 = 'test5';
$test5 = '5555';
echo $test1;
echo $$test1;
echo $$$test1;
echo $$$$test1 ;
echo $$$$$test1;
// test2 test3 test4 test5 5555
// 聽說一般沒人會這麼麻煩的這樣用....
外部變數
- 寫一個user.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>資訊填寫頁</title>
</head>
<body>
<!-- action="" 為空時是提交給自己 -->
<!-- action="reg.php" 用get方法將資料傳送給 reg.php -->
<form action="reg.php" method="get">
<input type="text" name="username"/>
<input type="password" name="pwd"/>
<input type="submit" value="提交"/>
</form>
</body>
</html>
- reg.php
<?php
/**
* 用get方式接收user.html裡的值
*/
// $_GET['username'] 獲取表單上輸入的username的值
// 在html中的username和pwd中分別輸入 123 和 456時:
var_dump($_GET['username']); // string(3) "123"
// 這時位址列顯示為 http://**************/reg.php?username=123&pwd=456
// 為了不顯示密碼, 應該改為post請求
- 改為post :
// user.html 中 method="get" 改為 method="post"
// reg.php 中 $_GET['username'] 改為 $_POST['username']
// 執行之後, 位址列的地址顯示為 http://**************/reg.php
GET , POST , RESULT
- $_GET 只能接收 get 請求的傳值 ;
- $_POST 只能接收 post 請求的傳值 ;
- $_RESULT 能接收 get 和 post 請求的傳值 .
環境變數
* URL 和 URI 都是網址 , 但是 URL 帶有主機地址部分 , URI 不帶 .
變數的引用
- 對比兩段程式碼 :
$a1 = 1;
$a2 = $a1;
echo $a2.'<br/>'; // 1
// 之後, 改變其中一個變數的值, 另一個變數的值不會隨之改變 .
$a1 = 2;
echo $a1.'<br/>'; // 2
echo $a2.'<br/>'; // 1
die; // 結束, 不執行後續程式碼
$b1 = 5;
$b2 = &$b1;
// & 取記憶體地址, 這樣兩個變數就指向同一個記憶體地址了.
// 然後無論修改二者哪個的值, 他們兩個的值都會發生改變 .
$b1 = 6;
echo $b1.'<br/>'; // 6
echo $b2.'<br/>'; // 6