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

Kiểm tra cài đặt

  1. Tạo file test.php trong thư mục htdocs (XAMPP) hoặc /var/www/html (Linux):

    <?php
    phpinfo();
    ?>
  2. 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

  1. Laravel:

    • Framework full-stack mạnh mẽ

    • Cú pháp elegant, hỗ trợ MVC

    • Cài đặt: composer create-project laravel/laravel myproject

  2. Symfony:

    • Framework doanh nghiệp

    • Component-based architecture

  3. CodeIgniter:

    • Nhẹ, phù hợp cho người mới

    • Cấu hình đơn giản

  4. 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ứchttps://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

Chia sẻ

0963286779