Hướng dẫn dùng ldapsearch examples trong PHP

Hướng dẫn dùng ldapsearch examples trong PHP

Nội dung chính

  • 1. Làm sạch một chuỗi với bộ lọc Filter
  • 2. Xác thực giá trị kiểu số nguyên
  • 3. Xác thực địa chỉ IP
  • 5. Cách Xác thực số nguyên trong một khoảng cho phép
  • 6. Cách xác thực địa chỉ Email hợp lệ sử dụng bộ lọc Filters
  • Tổng kết

Trong bài hướng dẫn tự học lập trình PHP này, bạn sẽ được hướng dẫn về cách làm sạchxác thực dữ liệu đầu vào của người dùng.

Chúng ta sẽ sử dụng các bộ lọc có sẵn trong PHP – PHP Filters

Làm sạch và xác thực dữ liệu đầu vào của người dùng là một trong những nhiệm vụ phổ biến nhất trong khi lập trình web. Để làm cho nhiệm vụ này dễ dàng hơn, PHP cung cấp tiện ích mở rộng filters mà bạn có thể sử dụng để làm sạch hoặc xác thực dữ liệu như địa chỉ email, URL, địa chỉ IP, v.v.

Để xác thực dữ liệu bằng cách sử dụng Filter, bạn cần sử dụng hàm filter_var() của PHP. Cú pháp cơ bản của hàm này như sau:

filter_var(variable, filter, options)

Hàm này có ba tham số trong đó hai tham số filter options là tùy chọn.

Tham số variable là giá trị được lọc, tham số thứ hai là ID của bộ lọc sẽ áp dụng và tham số thứ ba là mảng các tùy chọn liên quan đến bộ lọc.

Hướng dẫn làm sạch và xác thực dữ liệu với bộ lọc PHP (PHP Filters)

Hãy cùng xem chức năng filter hoạt động như thế nào qua các ví dụ bên dưới đây.

1. Làm sạch một chuỗi với bộ lọc Filter

Ví dụ sau sẽ làm sạch một chuỗi bằng cách xóa tất cả các thẻ HTML khỏi nó:

Chào bạn, hôm nay có gì vui không?";
 
  // Làm sạch và in ra chuỗi comment đã làm sạch
  $sanitizedComment = filter_var($comment, FILTER_SANITIZE_STRING);
  echo $sanitizedComment;
?>

Sau khi làm sạch với bộ lọc với ID bộ lọc là FILTER_SANITIZE_STRING chúng ta có kết quả đầu ra như sau:

Chào bạn, hôm nay có gì vui không?

2. Xác thực giá trị kiểu số nguyên

Ví dụ sau sẽ xác nhận xem giá trị có phải là số nguyên hợp lệ hay không:

$int là số nguyên";
  } else{
      echo "$int không là số nguyên";
  }
?>

Trong ví dụ trên, nếu biến $int gán giá trị 0, đoạn mã sẽ hiển thị thông báo “… không là số nguyên”. Để khắc phục sự cố này, bạn cần kiểm tra rõ ràng giá trị 0, như sau:

$int là số nguyên";
  } else{
      echo "$int không là số nguyên";
  }
?>

3. Xác thực địa chỉ IP

Ví dụ sau sẽ xác thực xem giá trị có phải là địa chỉ IP hợp lệ hay không:

$ip là địa chỉ IP hợp lệ";
  } else {
      echo "$ip không là địa chỉ IP hợp lệ";
  }
?>

Bạn có thể tiếp tục áp dụng xác thực cho các địa chỉ IP IPV4 hoặc IPV6 bằng cách sử dụng các bộ lọc FILTER_FLAG_IPV4 hoặc FILTER_FLAG_IPV6 tương ứng. Dưới đây là một ví dụ:

$ip là địa chỉ IPV6 hợp lệ";
  } else {
      echo "The $ip không là địa chỉ IPV6 hợp lệ";
  }
?>

>> Tham khảo ngay: Khóa học Lập trình PHP Fullstack chỉ trong 3 tháng.

Ví dụ sau đây sẽ cho bạn thấy cách làm sạch và xác thực một url thông qua bộ lọc Fillter của PHP.

$urls là URL hợp lệ";
  } else{
      echo "$urls không là URL hợp lệ";
  }
?>

Bạn cũng có thể kiểm tra xem URL có chứa chuỗi truy vấn hay không bằng cách sử dụng FILTER_FLAG_QUERY_REQUIRED, như trong ví dụ sau:

$url chứa chuỗi truy vấn";
  } else{
      echo "$url không chứa chuỗi truy vấn";
  }
?>

5. Cách Xác thực số nguyên trong một khoảng cho phép

Ví dụ sau sẽ xác thực giá trị được cung cấp có phải là số nguyên hay không, cũng như liệu nó có nằm trong phạm vi từ 0 đến 100 hay không.

 
  array("min_range" => 0,"max_range" => 100)))){
      echo "$int là số nguyên nằm trong khoảng 0 - 100";
  } else{
      echo "$int không là số nguyên nằm trong khoảng 0- 100";
  }
?>

6. Cách xác thực địa chỉ Email hợp lệ sử dụng bộ lọc Filters

Ví dụ sau sử dụng hàm filter_var() với ID bộ lọc là FILTER_SANITIZE_EMAIL để loại bỏ tất cả các ký tự bất hợp pháp từ biến $email, sau đó xác thực xem có đúng là địa chỉ Email hợp lệ hay không với FILTER_VALIDATE_EMAIL:

Tổng kết

Như vậy là bạn đã được hướng dẫn 6 cách làm sạchxác thực dữ liệu đầu vào của người dùng với bộ lọc Filters do PHP cung cấp sẵn.

Để tìm hiểu kỹ hơn về các bộ lọc trong PHP. Bạn vui lòng tìm hiểu thêm tại đây.