首頁 後端開發 PHP問題 php接收值全域數組有哪些

php接收值全域數組有哪些

Apr 26, 2023 am 09:06 AM

PHP是一種高階程式語言,可以透過接收輸入值來操作和處理資料。在PHP中,有許多全域數組可以用來接收輸入值。本文將介紹PHP中常用的全域數組,並討論它們的特性和用法。

  1. $_GET

$_GET是PHP的一種超級全域變量,用來接收HTTP GET請求的參數。 HTTP GET請求是一種請求方式,用於從伺服器取得資源。這些請求參數以鍵值對的形式傳遞到伺服器端。當使用get方式提交表單時,表單中的資料就會自動加入$_GET陣列。例如:

Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
登入後複製
登入後複製

當提交表單時,PHP會在$_GET陣列中新增鍵值對,如下所示:

Array
(

[name] => John
[email] => john@example.com
登入後複製
登入後複製

)

取得$_GET陣列中的參數時,可以使用下面的程式碼:

$name = $_GET['name'];
$email = $_GET['email'];

需要注意的是,$_GET陣列中的所有鍵值對都是字串類型。

  1. $_POST

$_POST是PHP的另一個超級全域變量,用於接收HTTP POST請求的參數。 HTTP POST請求也是一種請求方式,用於提交資料到伺服器接收。與$_GET相比,$_POST發送的請求參數不會暴露在URL網址列中。當使用post方式提交表單時,表單中的資料就會自動加入$_POST陣列。例如:

Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
登入後複製
登入後複製

當提交表單時,PHP會在$_POST數組中新增鍵值對,如下所示:

Array
(

[name] => John
[email] => john@example.com
登入後複製
登入後複製

)

取得$_POST數組中的參數時,可以使用下面的程式碼:

$name = $_POST['name'];
$email = $_POST['email'];

與$_GET相比,$_POST更安全,因為參數不會暴露在網址列中,但是它的速度比$_GET慢。

  1. $_FILES

$_FILES也是PHP的一種超級全域變量,用於接收HTTP POST請求的檔案上傳。透過HTTP POST請求,可以將要上傳的檔案傳送到伺服器端。當使用檔案上傳表單時,表單中的資料就會被自動加入到$_FILES陣列中。例如:

Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">
登入後複製

當提交表單並選擇要上傳的檔案時,PHP會在$_FILES陣列中新增屬性,如下所示:

Array
(

[fileToUpload] => Array
    (
        [name] => example.jpg
        [type] => image/jpeg
        [tmp_name] => /tmp/phpVJcax8
        [error] => 0
        [size] => 69130
    )
登入後複製

)

#取得上傳的檔案時,可以使用下面的程式碼:

$target_dir = "uploads/";
$target_file = $target_dir .basename($_FILES"fileToUpload");
move_uploaded_file ($_FILES["fileToUpload"]["tmp_name"], $target_file);

要注意的是,上傳的檔案會被儲存到伺服器指定的資料夾中。

  1. $_COOKIE

$_COOKIE是PHP的一種超級全域變量,用於接收儲存在客戶端電腦上的cookie值。 Cookie是一個小的文字文件,儲存在客戶端電腦上,用於與伺服器進行資料互動。在PHP中,可以使用setcookie()函數設定cookie值。當設定cookie後,可以使用$_COOKIE陣列接收cookie值。例如:

setcookie("user", "John Doe", time() 3600, "/"); // 設定cookie
echo $_COOKIE["user"]; // 輸出cookie值

在上面的程式碼中,setcookie()函數設定了一個名為“user”的cookie,它的值為“John Doe”,在設定時間一小時後過期。在echo語句中,$_COOKIE陣列接收了名為「user」的cookie的值,並輸出該值。

要注意的是,使用$_COOKIE陣列取得cookie值時,不需要引用cookie名稱。

  1. $_SESSION

$_SESSION也是PHP的一種超級全域變量,用於儲存會話資料。會話資料是一個比cookie更安全的儲存資料的方式。使用$_SESSION變數時,將資料儲存在伺服器端,而不是儲存在客戶端電腦上。在PHP中,可以透過session_start()函數啟動會話。例如:

session_start();
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";

在上面的程式碼中,session_start()函數啟動了一個會話,並透過$_SESSION["favcolor"]和$_SESSION["favanimal"]變數儲存了兩個值。在輸出語句中,$_SESSION數組接收了兩個變數的值,並且輸出。

要注意的是,使用$_SESSION陣列取得會話資料時,需要在腳本中使用session_start()函數啟動會話。

總結:

在PHP中,可以使用五種全域陣列:$_GET、$_POST、$_FILES、$_COOKIE和$_SESSION,來接收從客戶端提交的資料。使用這些全域數組,可以輕易地取得客戶端提交的數據,並進行各種數據處理操作。在使用全域數組時,需要注意變數名的大小寫和資料類型的轉換。

以上是php接收值全域數組有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)