Khi bắt đầu học về lập trình, PHP examples thường là một trong những ngôn ngữ phổ biến được nhiều người mới bắt đầu chọn lựa. Đây là một ngôn ngữ kịch bản phía máy chủ mạnh mẽ và linh hoạt, chủ yếu được sử dụng để phát triển các ứng dụng web động. Bài viết dưới đây của phpsolvent sẽ dành cho những người mới bắt đầu khám phá qua những ví dụ cụ thể và chi tiết.
Khái niệm cơ bản về PHP
PHP là gì?
PHP là viết tắt của “Hypertext Preprocessor,” và là một ngôn ngữ kịch bản mã nguồn mở. Thường được nhúng vào HTML, giúp tạo ra các trang web động. Được phát triển đầu tiên bởi Rasmus Lerdorf vào năm 1994 và từ đó, nó đã trở thành một trong những ngôn ngữ phổ biến nhất trên Internet, được sử dụng bởi hàng triệu website.
PHP hoạt động như thế nào?
PHP chạy trên máy chủ và tạo ra mã HTML sau khi xử lý xong. Khi người dùng gửi một yêu cầu HTTP tới máy chủ, mã sẽ được thực thi và sau đó trả về trình duyệt web dưới dạng HTML. Để thiết lập môi trường phát triển, bạn cần cài đặt một máy chủ web như Apache hoặc Nginx, cùng với và một cơ sở dữ liệu như MySQL.
Bắt đầu với đoạn mã PHP đầu tiên
Để viết đoạn mã đầu tiên, bạn sẽ cần tạo một tệp mới với đuôi mở rộng là. Dưới đây là một ví dụ cơ bản:
echo “Xin chào, thế giới!”;
?>
“`
Khi bạn lưu tệp này vào thư mục gốc của máy chủ web (vd: `htdocs` của XAMPP) và truy cập qua trình duyệt, bạn sẽ thấy dòng “Xin chào, thế giới!” xuất hiện, minh chứng cho đang hoạt động.
Biến và kiểu dữ liệu trong PHP
Biến trong PHP
Biến được bắt đầu bằng kí tự `$` theo sau là tên biến. Biến không cần định kiểu dữ liệu trước, sẽ tự động hiểu kiểu dữ liệu dựa trên giá trị bạn gán cho biến. Ví dụ:
$ten = “Hanh”;
$tuoi = 24;
$luong = 5000.50;
$dangDiHoc = true;
?>
“`
Kiểu dữ liệu cơ bản
Hỗ trợ nhiều kiểu dữ liệu khác nhau như: chuỗi (string), số nguyên (integer), số thực (float), mảng (array), đối tượng (object), boolean và null. Ví dụ:
$chuoi = “Hello, “;
$soNguyen = 2021;
$soThuc = 3.14;
$danhSach = array(1, 2, 3, 4, 5);
?>
“`
Toán tử và thao tác với biến
PHP cung cấp rất nhiều toán tử để bạn thao tác với biến, bao gồm các toán tử số học như `+`, `-`, `*`, `/`, toán tử gán như `=`, `+=`, `-=`, các toán tử quan hệ như `==`, `!=`, `>=`, `<=`, và toán tử logic như `&&`, `||`, `!`. Ví dụ:
$a = 5;
$b = 10;
$tong = $a + $b;
$isEqual = ($a == $b);
?>
“`
Cấu trúc điều kiện trong PHP
Lệnh if-else
Cấu trúc `if-else` được sử dụng để thực hiện một đoạn mã nếu điều kiện cho trước đúng hoặc sai. Dưới đây là ví dụ:
$diem = 85;
if ($diem >= 90) {
echo “Xuất sắc”;
} elseif ($diem >= 75) {
echo “Tốt”;
} else {
echo “Cần cố gắng”;
}
?>
“`
Cấu trúc điều kiện switch-case
Khi có nhiều điều kiện, bạn có thể sử dụng `switch-case` để làm mã nguồn ngắn gọn hơn:
$mauXe = “đỏ”;
switch ($mauXe) {
case “đỏ”:
echo “Xe màu đỏ”;
break;
case “xanh”:
echo “Xe màu xanh”;
break;
default:
echo “Màu không xác định”;
}
?>
“`
Sử dụng toán tử ba ngôi
Toán tử ba ngôi là một cách ngắn gọn hơn để viết câu lệnh `if-else`. Dưới đây là ví dụ:
$diem = 85;
$ketQua = ($diem >= 90) ? “Xuất sắc” : “Không xuất sắc”;
echo $ketQua;
?>
“`
Vòng lặp trong PHP
Vòng lặp for
`for` là một trong những vòng lặp phổ biến nhất. Nó cho phép bạn lặp lại một khối mã nhiều lần. Ví dụ:
for ($i = 0; $i < 10; $i++) {
echo “Số: $i
“;
}
?>
“`
Vòng lặp while
`while` lặp lại mã khi điều kiện còn đúng:
$i = 0;
while ($i < 10) {
echo “Số: $i
“;
$i++;
}
?>
“`
Vòng lặp do-while
`do-while` tương tự như `while`, nhưng điều kiện được kiểm tra sau khi khối mã được thực hiện ít nhất một lần:
$i = 0;
do {
echo “Số: $i
“;
$i++;
} while ($i < 10);
?>
“`
Xử lý form trong PHP
Phương thức GET
Khi bạn sử dụng phương thức GET, dữ liệu từ form được gửi qua URL, dễ dàng để kiểm tra nhưng không an toàn. Dưới đây là cách xử lý form GET:
Tên:
Tuổi:
“`
Và tệp `xu_ly_form.php`:
$ten = $_GET[‘ten’];
$tuoi = $_GET[‘tuoi’];
echo “Tên: $ten
Tuổi: $tuoi”;
?>
“`
Phương thức POST
POST gửi dữ liệu qua HTTP header, không hiển thị trong URL, an toàn hơn GET. Dưới đây là ví dụ:
Tên:
Tuổi:
“`
Tệp `xu_ly_form.php`:
$ten = $_POST[‘ten’];
$tuoi = $_POST[‘tuoi’];
echo “Tên: $ten
Tuổi: $tuoi”;
?>
“`
Kiểm tra dữ liệu nhập
Kiểm tra và xử lý trước khi áp dụng dữ liệu rất quan trọng để tránh lỗi và tấn công bảo mật như SQL Injection. Ví dụ:
if ($_SERVER[“REQUEST_METHOD”] == “POST”) {
$ten = htmlspecialchars($_POST[‘ten’]);
$tuoi = htmlspecialchars($_POST[‘tuoi’]);
if (empty($ten) || empty($tuoi)) {
echo “Dữ liệu không hợp lệ.”;
} else {
echo “Tên: $ten
Tuổi: $tuoi”;
}
}
?>
“`
Kết nối cơ sở dữ liệu MySQL
Kết nối đến MySQL
Để kết nối tới cơ sở dữ liệu MySQL, bạn cần sử dụng hàm `mysqli_connect` hoặc PDO. Ví dụ với `mysqli_connect`:
$servername = “localhost”;
$username = “root”;
$password = “”;
$dbname = “hoc”;
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die(“Kết nối thất bại: ” . mysqli_connect_error());
}
echo “Kết nối thành công”;
?>
“`
Thao tác với MySQL
Để thực hiện truy vấn MySQL, bạn có thể dùng hàm `mysqli_query`. Ví dụ thêm một bản ghi mới:
SERT INTO sinh_vien (ten, tuoi) VALUES (‘Hanh’, 23)”;
if (mysqli_query($conn, $sql)) {
echo “Thêm bản ghi thành công”;
} else {
echo “Lỗi: ” . $sql . “
” . mysqli_error($conn);
}
?>
“`
Đóng kết nối
Cuối cùng, sau khi hoàn thành các thao tác, hãy đóng kết nối để giải phóng tài nguyên với `mysqli_close`:
mysqli_close($conn);
?>
“`
OOP trong PHP
Lớp và đối tượng
Hỗ trợ lập trình hướng đối tượng (OOP). Một lớp (class) là một bản thiết kế cho các đối tượng (object). Ví dụ:
class Nguoi {
public $ten;
public $tuoi;
function set_ten($ten) {
$this->ten = $ten;
}
function get_ten() {
return $this->ten;
}
}
$nguoi1 = new Nguoi();
$nguoi1->set_ten(“Hanh”);
echo $nguoi1->get_ten();
?>
“`
Các phương pháp và thuộc tính
Phương pháp (method) là hàm trong lớp, và thuộc tính (property) là biến trong lớp. Bạn có thể truy cập các thuộc tính và phương pháp thông qua một đối tượng:
class Xe {
public $mau;
public $tocDo;
function __construct($mau, $tocDo) {
$this->mau = $mau;
$this->tocDo = $tocDo;
}
function moTa() {
return “Xe màu ” . $this->mau . ” có tốc độ ” . $this->tocDo . ” km/h”;
}
}
$xe1 = new Xe(“đỏ”, 120);
echo $xe1->moTa();
?>
“`
Kế thừa
Kế thừa cho phép một lớp có thể sử dụng thuộc tính và phương pháp từ một lớp khác. Ví dụ:
class DongVat {
public $ten;
public $tuoi;
function moTa() {
return $this->ten . ” là động vật ” . $this->tuoi . ” tuổi.”;
}
}
class Cho extends DongVat {
public $giong;
function moTaChiTiet() {
return “Chó giống ” . $this->giong . ” – ” . $this->moTa();
}
}
$cho1 = new Cho();
$cho1->ten = “Husky”;
$cho1->tuoi = 2;
$cho1->giong = “Siberian”;
echo $cho1->moTaChiTiet();
?>
“`
Kết luận
PHP là một trong những ngôn ngữ lập trình mạnh mẽ và dễ học nhất, đặc biệt phù hợp cho những người mới bắt đầu trong lĩnh vực phát triển web. Từ các khái niệm cơ bản đến các tính năng nâng cao như lập trình hướng đối tượng, xử lý form và kết nối cơ sở dữ liệu, cung cấp mọi thứ bạn cần để tạo ra các ứng dụng web đầy đủ tính năng.