Mục lục
Lập trình Web bằng PHP: Hướng dẫn từ A-Z
1. Giới thiệu PHP
-
PHP (Hypertext Preprocessor) là ngôn ngữ lập trình server-side mã nguồn mở, ra đời năm 1994.
-
Đặc điểm nổi bật:
-
Được thiết kế riêng cho phát triển web.
-
Nhúng trực tiếp vào HTML.
-
Chạy trên server, trả về HTML cho trình duyệt.
-
Hỗ trợ hầu hết các hệ quản trị cơ sở dữ liệu (MySQL, PostgreSQL, SQLite).
-
2. Cài đặt môi trường PHP
Cách 1: Cài đặt local server
-
XAMPP (Windows/macOS/Linux): https://www.apachefriends.org
-
WAMP (Windows): http://www.wampserver.com
-
LAMP (Linux):
sudo apt install apache2 php mysql-server
Kiểm tra cài đặt
-
Tạo file
test.php
trong thư mụchtdocs
(XAMPP) hoặc/var/www/html
(Linux):<?php phpinfo(); ?>
-
Truy cập:
http://localhost/test.php
3. Cú pháp PHP cơ bản
a. Cấu trúc cơ bản
<?php
// Code PHP
echo "Hello World!";
?>
b. Biến và kiểu dữ liệu
$name = "John"; // String $age = 30; // Integer $price = 9.99; // Float $is_active = true; // Boolean // Mảng $fruits = array("Apple", "Banana", "Orange"); // Hoặc $fruits = ["Apple", "Banana", "Orange"];
c. Câu lệnh điều kiện
if ($age >= 18) { echo "Bạn đã trưởng thành"; } elseif ($age >= 13) { echo "Bạn là thiếu niên"; } else { echo "Bạn là trẻ em"; }
d. Vòng lặp
// For loop for ($i = 0; $i < 5; $i++) { echo $i; } // Foreach foreach ($fruits as $fruit) { echo $fruit; } // While $i = 0; while ($i < 5) { echo $i; $i++; }
e. Hàm
function greet($name) { return "Xin chào, " . $name . "!"; } echo greet("Anna");
4. Lập trình Web với PHP
a. Xử lý form
<!-- form.html --> <form action="process.php" method="post"> <input type="text" name="username"> <input type="submit" value="Gửi"> </form>
<!-- process.php --> <?php $username = $_POST['username']; echo "Xin chào, " . htmlspecialchars($username); ?>
b. Kết nối database (MySQL)
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";
// Tạo kết nối
$conn = new mysqli($servername, $username, $password, $dbname);
// Kiểm tra kết nối
if ($conn->connect_error) {
die("Kết nối thất bại: " . $conn->connect_error);
}
// Thực hiện truy vấn
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
}
} else {
echo "Không có kết quả";
}
$conn->close();
?>
c. Session và Cookie
// Bắt đầu session session_start(); // Lưu session $_SESSION['username'] = 'admin'; // Lấy session echo $_SESSION['username']; // Xóa session session_unset(); session_destroy(); // Cookie setcookie("user", "John Doe", time() + 3600, "/"); // 1 giờ echo $_COOKIE["user"];
5. Framework PHP phổ biến
-
Laravel:
-
Framework full-stack mạnh mẽ
-
Cú pháp elegant, hỗ trợ MVC
-
Cài đặt:
composer create-project laravel/laravel myproject
-
-
Symfony:
-
Framework doanh nghiệp
-
Component-based architecture
-
-
CodeIgniter:
-
Nhẹ, phù hợp cho người mới
-
Cấu hình đơn giản
-
-
WordPress:
-
Hệ thống CMS phổ biến nhất
-
Dựa trên PHP để phát triển website
-
6. Bảo mật trong PHP
-
Lọc dữ liệu đầu vào:
$clean_input = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING);
-
Chống SQL Injection:
$stmt = $conn->prepare("SELECT * FROM users WHERE username = ?"); $stmt->bind_param("s", $username); $stmt->execute();
-
Bảo mật session:
session_regenerate_id(); ini_set('session.cookie_httponly', 1); ini_set('session.cookie_secure', 1);
7. Xu hướng PHP hiện đại
-
PHP 8.x với JIT compiler
-
API Development với Laravel/Symfony
-
Microservices
-
Integration với Frontend (React/Vue)
8. Tài nguyên học PHP
-
Tài liệu chính thức: https://www.php.net
-
Học online:
-
W3Schools PHP Tutorial
-
PHP The Right Way
-
-
Khóa học:
-
Laracasts (cho Laravel)
-
SymfonyCasts (cho Symfony)
-
PHP vẫn là một trong những ngôn ngữ backend phổ biến nhất thế giới, đặc biệt phù hợp cho:
-
Phát triển website động
-
Hệ thống quản trị nội dung (CMS)
-
Ứng dụng web doanh nghiệp
-
API services