1. 程式人生 > >PHP入門 - 常量和變數

PHP入門 - 常量和變數

  • 目錄


常量

命名一個常量 :

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