Nội dung bài viết
- 1.PHP hoạt động như thế nào?
- 2.PHP dùng để làm gì?
- 2.1Phân biệt PHP, CMS và framework
- 2.2Những nền tảng nổi tiếng viết bằng PHP
- 3.Cú pháp PHP cơ bản
- 3.1Biến, hằng và kiểu dữ liệu
- 3.2Hàm có khai báo kiểu
- 3.3Lập trình hướng đối tượng
- 4.Lịch sử và các phiên bản PHP
- 4.1Phiên bản PHP nào còn được hỗ trợ?
- 5.Ưu điểm và hạn chế của PHP
- 6.Nên học PHP như thế nào?
- 6.1Kinh nghiệm từ Hozitech
PHP (viết tắt đệ quy của "PHP: Hypertext Preprocessor") là ngôn ngữ lập trình kịch bản mã nguồn mở, chạy phía máy chủ, được thiết kế đặc biệt cho phát triển web và có thể nhúng trực tiếp vào HTML. PHP do Rasmus Lerdorf tạo ra năm 1994. Phiên bản mới nhất là PHP 8.5, phát hành ngày 20/11/2025.
Theo thống kê của W3Techs ngày 01/10/2026, PHP được dùng trên 69,8% các website mà W3Techs xác định được ngôn ngữ phía máy chủ. Bài viết giải thích PHP hoạt động thế nào, dùng để làm gì, cú pháp cơ bản và các phiên bản đang được hỗ trợ.

PHP hoạt động như thế nào?
Khác với JavaScript chạy trong trình duyệt, mã PHP chạy trên máy chủ. Khi người dùng mở một trang .php, web server (Nginx, Apache) chuyển file cho trình thông dịch PHP; PHP thực thi mã, có thể đọc database, rồi trả kết quả dạng HTML. Trình duyệt chỉ nhận HTML nên người xem không thấy mã nguồn PHP.
<!DOCTYPE html>
<html lang="vi">
<body>
<h1>Xin chào!</h1>
<p>Hôm nay là <?php echo date('d/m/Y'); ?></p>
</body>
</html>
Trình duyệt chỉ nhận dòng kiểu "Hôm nay là 01/10/2026", không thấy đoạn <?php ... ?>.
PHP dùng để làm gì?
- Website động: trang tin, website doanh nghiệp, diễn đàn, trang thành viên có đăng nhập.
- Hệ quản trị nội dung (CMS): WordPress, Drupal, Joomla đều viết bằng PHP.
- Thương mại điện tử: WooCommerce (plugin của WordPress), Magento.
- Ứng dụng web và API: xây bằng framework như Laravel, Symfony; cung cấp API cho ứng dụng di động.
- Script dòng lệnh: tác vụ định kỳ, xử lý dữ liệu, công cụ nội bộ.
Phân biệt PHP, CMS và framework
Nhiều bài viết gọi chung "PHP, WordPress, Laravel" là CMS, điều này không đúng. Ba khái niệm ở ba tầng khác nhau:
| Khái niệm | Là gì | Ví dụ |
|---|---|---|
| Ngôn ngữ lập trình | Công cụ để viết mã | PHP |
| Framework | Bộ khung và thư viện để lập trình viên xây ứng dụng nhanh, có cấu trúc | Laravel, Symfony, CodeIgniter |
| CMS | Phần mềm hoàn chỉnh để quản lý nội dung, dùng được ngay qua trang quản trị | WordPress, Drupal, Joomla |
Những nền tảng nổi tiếng viết bằng PHP
WordPress và MediaWiki (phần mềm chạy Wikipedia) là hai ví dụ tiêu biểu. Ngược lại, một số danh sách cũ liệt kê nhầm Twitter hay Dropbox là "viết bằng PHP": hệ thống backend của Twitter chuyển từ Ruby on Rails sang Java/Scala trên JVM (InfoQ), còn Dropbox dùng chủ yếu Python và Go (Dropbox Tech Blog).
Cú pháp PHP cơ bản
Mã PHP nằm trong cặp thẻ <?php ... ?>; mỗi câu lệnh kết thúc bằng dấu chấm phẩy; biến bắt đầu bằng $.
Biến, hằng và kiểu dữ liệu
<?php
const VAT_RATE = 0.1; // hằng số
$name = 'Hozitech'; // string
$price = 15000000; // int
$active = true; // bool
$tags = ['web', 'laravel']; // array
echo "Giá sau thuế: " . $price * (1 + VAT_RATE);
Hàm có khai báo kiểu
Từ PHP 7, có thể khai báo kiểu tham số và kiểu trả về; PHP 8 bổ sung union type, named argument và biểu thức match.
<?php
function shippingFee(int $weightGram): int
{
return match (true) {
$weightGram <= 500 => 20000,
$weightGram <= 2000 => 35000,
default => 50000,
};
}
echo shippingFee(weightGram: 800); // 35000
Lập trình hướng đối tượng
PHP hỗ trợ đầy đủ class, interface, trait, enum (từ 8.1). Ví dụ dùng constructor property promotion (PHP 8.0) và thuộc tính readonly (PHP 8.1):
<?php
final class Product
{
public function __construct(
public readonly string $name,
public readonly int $price,
) {}
public function priceWithVat(float $rate = 0.1): int
{
return (int) round($this->price * (1 + $rate));
}
}
$product = new Product('Website doanh nghiệp', 15000000);
echo $product->priceWithVat();
Lịch sử và các phiên bản PHP
| Phiên bản | Năm | Điểm chính |
|---|---|---|
| PHP Tools / PHP/FI | 1994 – 1995 | Rasmus Lerdorf viết bộ công cụ CGI "Personal Home Page Tools". |
| PHP/FI 2.0 | 1995 – 1996 | Hỗ trợ database, cookie, hàm do người dùng định nghĩa. |
| PHP 3 | 1998 | Gần với PHP hiện đại, dễ mở rộng, bắt đầu hỗ trợ hướng đối tượng. |
| PHP 4 | 2000 | Zend Engine, session HTTP, output buffering. |
| PHP 5 | 2004 | Zend Engine 2, mô hình đối tượng mới. |
| PHP 7 | 2015 | Zend Engine 3, nhanh gấp khoảng 2 lần PHP 5.6 theo php.net. |
| PHP 8.0 | 2020 | Named argument, union type, attribute, match, nullsafe, JIT. |
| PHP 8.4 | 21/11/2024 | Property hooks, asymmetric visibility, array_find(). |
| PHP 8.5 | 20/11/2025 | Toán tử pipe |>, extension URI, array_first() / array_last(). |
Nguồn: php.net – History of PHP và trang phát hành PHP 8.5 (truy cập 01/10/2026).
Phiên bản PHP nào còn được hỗ trợ?
Theo php.net/supported-versions (truy cập 01/10/2026), các nhánh còn được hỗ trợ là 8.2 (chỉ vá bảo mật đến 31/12/2026), 8.3, 8.4 và 8.5. Mỗi nhánh có 2 năm hỗ trợ tích cực và 2 năm vá bảo mật. PHP 8.1 trở về trước đã hết hỗ trợ; nếu website còn chạy PHP 7.x hoặc 5.x, nên lên kế hoạch nâng cấp. W3Techs cùng ngày ghi nhận 27,8% website dùng PHP vẫn ở nhánh 7 và 7,8% ở nhánh 5.
Ưu điểm và hạn chế của PHP
| Ưu điểm | Hạn chế |
|---|---|
| Miễn phí, mã nguồn mở, chạy trên Linux, Windows, macOS. | Code cũ (PHP 5) thường thiếu kiểu dữ liệu, khó bảo trì nếu không có framework. |
| Hầu hết gói hosting phổ thông đều hỗ trợ sẵn. | Không phù hợp làm giao diện chạy trong trình duyệt; phần đó vẫn cần JavaScript. |
| Hệ sinh thái lớn: Composer, Packagist, WordPress, Laravel, Symfony. | Mỗi nhánh chỉ được hỗ trợ khoảng 4 năm, phải nâng cấp định kỳ. |
| Dễ bắt đầu: viết vài dòng là có trang web động. | Dễ viết sai bảo mật (SQL injection, XSS) nếu không dùng prepared statement và escape dữ liệu. |
Nên học PHP như thế nào?
- Học cú pháp, mảng, hàm, xử lý form và làm việc với MySQL qua PDO (prepared statement).
- Học lập trình hướng đối tượng, namespace, Composer.
- Hiểu mô hình MVC, sau đó chuyển sang framework: đọc Laravel là gì và làm theo hướng dẫn cài đặt Laravel.
- So sánh với các lựa chọn khác trong bài các ngôn ngữ lập trình web phổ biến.
Kinh nghiệm từ Hozitech
Các website Hozitech làm chủ yếu chạy trên PHP, qua WordPress hoặc Laravel (website hozitech.com chạy Laravel). Từ kinh nghiệm làm website trên hai nền tảng này, điểm hay bị bỏ quên sau bàn giao là phiên bản PHP của hosting: website chạy trên nhánh PHP đã hết hỗ trợ sẽ không còn nhận bản vá bảo mật, và plugin hoặc thư viện mới dần ngừng tương thích. Nếu website hiện tại của bạn đang ở PHP cũ, có thể tham khảo dịch vụ chăm sóc và bảo trì website.
Về tác giả
Founder
Xin chào mình là Hiền hiện đang là Founder của Hozitech. Mình là kỹ sư phần mềm có hơn 9+ năm kinh nghiệm trong lĩnh vực thiết kế website, ứng dụng di động... Gần đây mình đang nghiên cứu thêm về lĩnh vực marketing. Mình rất vui khi được chia sẽ những kiến thức và kinh nghiệm của mình đến mọi người!
Câu hỏi thường gặp