NTM Solutions

Bài đăng nổi bật

🚀 Laravel 12 (2026) — Từ PHP Core đến Full Stack📘

Nếu cập nhật theo Laravel 12 LTS (2026) thì mình sẽ chia thành các phần như sau để người học đi từ PHP Core → Laravel → Triển khai dự án th...

Thứ Ba, 16 tháng 6, 2026

📘Bài 16 — GLOBAL & SUPER GLOBAL🌍

#laptrinhphpcoban

Sau khi đã biết hàm và mảng, đây là lúc tìm hiểu cách PHP trao đổi dữ liệu giữa các phần khác nhau của chương trình.

PHP cung cấp:

global
$GLOBALS
$_GET
$_POST
$_SERVER

Đây được gọi là Super Global Variables — các biến đặc biệt có thể truy cập ở mọi nơi trong chương trình.


🌍 1. Từ khóa global

Thông thường biến bên ngoài hàm không thể dùng trực tiếp bên trong hàm.

Ví dụ:

<?php

$name = "TSM";

function hello()
{
    echo $name;
}

hello();

Kết quả:

Undefined variable $name

Muốn sử dụng biến ngoài hàm:

<?php

$name = "TSM";

function hello()
{
    global $name;

    echo $name;
}

hello();

Kết quả:

TSM

🧠 2. Sử dụng nhiều biến global

<?php

$a = 10;
$b = 20;

function sum()
{
    global $a, $b;

    echo $a + $b;
}

sum();

Kết quả:

30

📦 3. Biến $GLOBALS

PHP tự động lưu tất cả biến toàn cục vào mảng $GLOBALS.

Ví dụ:

<?php

$name = "PHP";
$year = 2025;

print_r($GLOBALS);

Kết quả sẽ chứa:

Array
(
    [name] => PHP
    [year] => 2025
)

🔍 4. Truy cập biến bằng $GLOBALS

<?php

$price = 100;

function showPrice()
{
    echo $GLOBALS['price'];
}

showPrice();

Kết quả:

100

⚡ 5. Thay đổi giá trị bằng $GLOBALS

<?php

$count = 1;

function increase()
{
    $GLOBALS['count']++;
}

increase();

echo $count;

Kết quả:

2

🌐 6. Biến $_GET

$_GET dùng để nhận dữ liệu từ URL.

Ví dụ:

test.php?name=TSM

Trong file:

<?php

echo $_GET['name'];

Kết quả:

TSM

🔗 7. Nhiều tham số GET

URL:

test.php?name=TSM&age=43

PHP:

<?php

echo $_GET['name'];
echo "<br>";
echo $_GET['age'];

Kết quả:

TSM
43

📝 8. Biến $_POST

$_POST dùng để nhận dữ liệu từ form.

Ví dụ:

<form method="post">
    <input type="text" name="username">
    <button>Gửi</button>
</form>

PHP:

<?php

echo $_POST['username'];

Khi nhập:

admin

Kết quả:

admin

🛡️ 9. Kiểm tra dữ liệu POST

Nên kiểm tra trước khi dùng:

<?php

if(isset($_POST['username']))
{
    echo $_POST['username'];
}

Tránh lỗi:

Undefined array key

🖥️ 10. Biến $_SERVER

$_SERVER chứa thông tin về máy chủ và request hiện tại.

Ví dụ:

<?php

print_r($_SERVER);

PHP sẽ trả về rất nhiều thông tin.


🔍 11. Một số phần tử hay dùng của $_SERVER

Tên file hiện tại

echo $_SERVER['PHP_SELF'];

Ví dụ:

/index.php

Tên host

echo $_SERVER['HTTP_HOST'];

Ví dụ:

localhost

Phương thức gửi dữ liệu

echo $_SERVER['REQUEST_METHOD'];

Kết quả:

GET

hoặc

POST

User Agent trình duyệt

echo $_SERVER['HTTP_USER_AGENT'];

Ví dụ:

Chrome
Edge
Firefox

🎯 Ví dụ thực tế

<?php

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    echo "Form đã được gửi";
}
else
{
    echo "Chưa gửi form";
}

Đây là cách cực kỳ phổ biến trong các website PHP.


⚠️ Lưu ý quan trọng

Không nên lạm dụng:

global
$GLOBALS

Trong các dự án lớn.

Thay vào đó:

✅ Truyền tham số vào hàm
✅ Sử dụng class/object
✅ Quản lý dữ liệu rõ ràng hơn


📌 Tổng kết

🔢📚 Nội dung✅ Ghi nhớ
1️⃣🌍 globalDùng biến toàn cục trong hàm
2️⃣📦 $GLOBALSMảng chứa toàn bộ biến global
3️⃣🔗 $_GETNhận dữ liệu từ URL
4️⃣📝 $_POSTNhận dữ liệu từ form
5️⃣🖥️ $_SERVERThông tin request và server
6️⃣🛡️ isset()Kiểm tra dữ liệu tồn tại
7️⃣REQUEST_METHODXác định GET hay POST

🥚 Bài tiếp theo

👉 Bài 17 — Form HTML + PHP

  • Form hoạt động như thế nào?

  • Thu thập dữ liệu người dùng

  • method GET

  • method POST

  • action

  • Xử lý form bằng PHP

Bắt đầu bước đầu tiên để tạo website động thực sự bằng PHP. 🚀

╔══════════════════════╗
🐘 PHP 8.2 • Bài 16
🌍 Global Variables
🚀 Super Globals
╚══════════════════════╝
x1

quay về MỤC LỤC

Không có nhận xét nào:

Đăng nhận xét

Facebook Youtube RSS