PHP filter_input()

Giới thiệu về filter_input() trong PHP

Hàm filter_input() trong PHP được sử dụng để lấy và kiểm tra giá trị của các biến nhập từ người dùng, như thông tin từ biểu mẫu HTML hoặc URL. Hàm này giúp tăng cường bảo mật bằng cách lọc và xác thực dữ liệu trước khi nó được sử dụng trong ứng dụng.

Cú pháp

filter_input(type, variable_name, filter = FILTER_DEFAULT, options = null);

Tham số

  • type: Loại dữ liệu mà bạn muốn lấy. Có thể là một trong các hằng số sau:
    • INPUT_GET: Dữ liệu từ query string của URL.
    • INPUT_POST: Dữ liệu từ phương thức POST.
    • INPUT_COOKIE: Dữ liệu từ cookie.
    • INPUT_SERVER: Dữ liệu từ biến server.
    • INPUT_ENV: Dữ liệu từ biến môi trường.
  • variable_name: Tên của biến mà bạn muốn lấy giá trị.
  • filter (tùy chọn): Kiểu lọc mà bạn muốn áp dụng. Mặc định là FILTER_DEFAULT.
  • options (tùy chọn): Các tùy chọn bổ sung cho bộ lọc.

Ví dụ sử dụng


Các bộ lọc thường dùng

  • FILTER_VALIDATE_INT: Kiểm tra xem giá trị có phải là số nguyên hay không.
  • FILTER_VALIDATE_EMAIL: Kiểm tra xem giá trị có phải là địa chỉ email hợp lệ hay không.
  • FILTER_SANITIZE_STRING: Loại bỏ các ký tự không hợp lệ từ chuỗi.
  • FILTER_SANITIZE_EMAIL: Loại bỏ các ký tự không hợp lệ từ địa chỉ email.

Lợi ích

Sử dụng filter_input() giúp bạn:
- Bảo vệ ứng dụng khỏi các tấn công XSS và SQL Injection.
- Đảm bảo rằng dữ liệu người dùng là hợp lệ trước khi xử lý.
- Giảm thiểu lỗi khi nhận và xử lý dữ liệu nhập từ người dùng.

Kết luận

Hàm filter_input() là một công cụ mạnh mẽ trong PHP để đảm bảo rằng dữ liệu người dùng được kiểm tra và lọc trước khi sử dụng. Việc áp dụng hàm này sẽ giúp bảo mật ứng dụng của bạn tốt hơn và hạn chế các lỗi không mong muốn trong quá trình xử lý dữ liệu.