Filter trong PHP - Giải mã thông tin về Filter trong PHP
08/06/2021 01:31
Khái niệm về bộ lọc Filter trong PHP Filter hay Bộ lọc PHP là một phần mở rộng lọc dữ liệu bằng cách xác thực. Filter đóng một vai trò quan trọng trong bảo mật của một trang web, đặc biệt hữu ích khi dữ liệu bắt nguồn từ các nguồn không xác định hoặc nước ngoài, như đầu vào do người dùng cung cấp. Ví dụ như dữ liệu từ một biểu mẫu HTML.
Khác với các bộ lọc ta thường nghe trong các ứng dụng chỉnh ảnh. Bộ lọc PHP trong lập trình đóng vai trò quan trọng trong việc bảo mật dữ liệu với lập trình viên. Filter trong PHP là một yếu tố không thể bỏ qua mà mỗi lập trình viên nên biết. Để hiểu thêm về bộ lọc trong PHP. Cùng T3H tìm hiểu ngay qua bài viết dưới đây bạn nhé!
Bộ lọc PHP trong lập trình đóng vai trò quan trọng trong việc bảo mật dữ liệu với lập trình viên.
Một số ưu điểm của bộ lọc Filter trong PHP
Bộ lọc PHP rất hữu ích trong việc xử lý bảo mật dữ liệu và quản lý dữ liệu. Bảo mật dữ liệu và quản lý dữ liệu là mối quan tâm lớn trong tất cả các ứng dụng PHP. Quản lý dữ liệu đề cập đến việc xử lý dữ liệu và duy trì nó để sử dụng và xử lý ứng dụng trong PHP.
Dữ liệu cho một ứng dụng trong các chương trình PHP có thể có hai nguồn, một có thể là tổ chức nội bộ chạy ứng dụng và một có thể là dữ liệu bên ngoài. Dữ liệu từ tổ chức nội bộ dễ dàng xử lý vì nó được sắp xếp trước theo các định dạng cần thiết.
Ví dụ Filter trong PHP
Thách thức chính phải đối mặt khi làm việc với dữ liệu bên ngoài. Dữ liệu bên ngoài có thể bao gồm dữ liệu từ đầu vào của người dùng, cookie, dịch vụ web, biến máy chủ và kết quả truy vấn cơ sở dữ liệu.
>>> Đọc thêm: Interface trong PHP - Tất tần tật về giao diện PHP mà bạn phải biết
Các loại bộ lọc Filter trong PHP
Có một số bộ lọc PHP như sau:
Nhưng hai bộ lọc dưới đây được sử dụng thường xuyên nhất
- Xác thực: được sử dụng để xác thực hoặc kiểm tra xem dữ liệu có đáp ứng các tiêu chuẩn nhất định hay không. Ví dụ: chuyển vào FILTER_VALIDATE_URL sẽ xác định xem dữ liệu có phải là url hợp lệ hay không, nhưng nó sẽ không tự thay đổi dữ liệu hiện có.
- Sanitization (Vệ sinh): không giống như xác thực, Sanitization sẽ làm sạch dữ liệu để đảm bảo rằng không có ký tự không mong muốn nào bằng cách xóa hoặc thay đổi dữ liệu. Ví dụ: chuyển các dữ liệu vào FILTER_SANITIZE_EMAIL sẽ xóa tất cả các ký tự không thích hợp cho một địa chỉ email. Có nghĩa là các địa chỉ này cũng sẽ không được xác thực
Ví dụ về Filter trong PHP
Ví dụ 1
Chương trình PHP để xác thực URL bằng bộ lọc FILTER_VALIDATE_URL.
<?php
// PHP program to validate URL
// Declare variable and initialize it to URL
$url = "https://www.geeksforgeeks.org";
// Use filter function to validate URL
if (filter_var($url, FILTER_VALIDATE_URL)) {
echo("valid URL");
}
else {
echo("Invalid URL");
}
?>
Ví dụ 2
Dùng chương trình PHP để xác thực email bằng bộ lọc FILTER_VALIDATE_EMAIL.
<?php
// PHP program to validate email
// Declare variable and initialize it to email
$email = "xyz@gmail.com";
// Use filter function to validate email
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
echo "Valid Email";
}
else {
echo "Invalid Email";
}
?>
>>>> Đọc thêm: Session trong PHP - 10 phút tìm hiểu nhanh về Session trong PHP
Chức năng của bộ lọc Filter PHP
Chức năng bộ lọc được sử dụng để lọc dữ liệu đến từ nguồn không an toàn.
Dưới đây là các chức năng cụ thể của từng bộ lọc filter trong pHP
- ilter_var (): Lọc một biến cụ thể
- filter_var_array (): Lọc nhiều biến tức là mảng biến
- filter_has_var (): Kiểm tra xem biến của các loại đầu vào cụ thể có tồn tại hay không
- filter_id (): giúp lấy id bộ lọc của tên bộ lọc được chỉ định
- filter_list (): Trả về danh sách tên bộ lọc được hỗ trợ ở dạng mảng.
- filter_input (): Nhận một biến bên ngoài và lọc nó
- filter_input_array (): giống như filter_input () nhưng ở đây lấy các mảng biến và lọc chúng.
>>> Tham khảo: Khóa học lập trình PHP
Hằng số bộ lọc được xác định trước
Có nhiều hằng số bộ lọc xác định trước được liệt kê bên dưới:
- Xác thực các hằng số bộ lọc:
- FILTER_VALIDATE_BOOLEAN: Xác thực boolean
- FILTER_VALIDATE_INT: Xác thực một số nguyên
- FILTER_VALIDATE_FLOAT: Xác thực một float
- FILTER_VALIDATE_REGEXP: Xác thực một biểu thức chính quy
- FILTER_VALIDATE_IP: Xác thực địa chỉ IP
- FILTER_VALIDATE_EMAIL: Xác thực địa chỉ e-mail
- FILTER_VALIDATE_URL: Xác thực URL
- Sanitize (vệ sinh) hằng số bộ lọc:
- FILTER_SANITIZE_EMAIL: Xóa tất cả các ký tự không hợp lệ khỏi địa chỉ email
- FILTER_SANITIZE_ENCODED: Xóa / Mã hóa các ký tự đặc biệt
- FILTER_SANITIZE_MAGIC_QUOTES: Áp dụng hàm addlash ()
- FILTER_SANITIZE_NUMBER_FLOAT: Xóa tất cả các ký tự, trừ các chữ số, + - và tùy chọn., EE
- FILTER_SANITIZE_NUMBER_INT: Xóa tất cả các ký tự ngoại trừ các chữ số và + -
- FILTER_SANITIZE_SPECIAL_CHARS: Xóa các ký tự đặc biệt
- FILTER_SANITIZE_FULL_SPECIAL_CHARS Có thể tắt báo giá mã hóa bằng cách sử dụng FILTER_FLAG_NO_ENCODE_QUOTES.
- FILTER_SANITIZE_STRING: Xóa thẻ / ký tự đặc biệt khỏi chuỗi
- FILTER_SANITIZE_STRIPPED: Bí danh của FILTER_SANITIZE_STRING
- FILTER_SANITIZE_URL: Xóa tất cả ký tự bất hợp pháp khỏi URL
Các hằng số bộ lọc khác:
- FILTER_UNSAFE_RAW: Không làm gì cả, tùy chọn dải / mã hóa các ký tự đặc biệt
- FILTER_CALLBACK: Gọi hàm do người dùng xác định để lọc dữ liệu
Kết luận: Trên đây là các thông tin về Filter trong Python và chức năng của các Filter hằng số trong PHP. Với vai trò xác thực và bảo mật các thông tin, filter trong PHP chắc chắn là một tính năng tốt cho bất kỳ dự án nào. Tìm hiểu thêm về PHP và các ngôn ngữ lập trình khác qua các khóa học lập trình tại Viện công nghệ thông tin T3H.