Làm cách nào tôi có thể lọc trong php?

PHP cung cấp một số chức năng lọc cho phép bạn dễ dàng kiểm tra dữ liệu hợp lệ hoặc làm sạch dữ liệu nếu có bất kỳ dữ liệu không mong muốn nào. Bảng sau liệt kê các chức năng khác nhau có sẵn trong họ bộ lọc

PHP Filter FunctionsFunctionDescriptionfilter_has_var()Kiểm tra xem một biến thuộc loại đã chỉ định có tồn tạifilter_id()Trả về ID bộ lọc của bộ lọc đã chỉ địnhfilter_input()Truy xuất giá trị được truyền bởi GET, POST, phiên hoặc cookie và lọc nófilter_input_array()Truy xuất nhiều giá trị được truyền cho chương trình PHP và lọc chúngfilter_list()Trả về danh sách các bộ lọc được hỗ trợfilter_var()Bộ lọc a . Có hai nhóm bộ lọc chính
  • Thẩm định. Kiểm tra xem có dữ liệu được chỉ định hay không
  • vệ sinh. Kiểm tra xem có dữ liệu được chỉ định hay không và xóa dữ liệu đó
Bảng sau đây hiển thị các bộ lọc xác thực khác nhau có sẵn. PHP Validation FiltersFilterDescriptionFILTER_VALIDATE_BOOLEANKiểm tra giá trị Boolean hợp lệFILTER_VALIDATE_EMAILKiểm tra địa chỉ email hợp lệFILTER_VALIDATE_FLOATKiểm tra giá trị float hợp lệfilter_id()0Kiểm tra giá trị số nguyên hợp lệfilter_id()1Kiểm tra giá trị địa chỉ IP hợp lệfilter_id()2Kiểm tra giá trị biểu thức chính quy hợp lệfilter_id()3Kiểm tra chuỗi URL hợp lệViệc kiểm tra xác thực trả về giá trị filter_id()4 nếu dữ liệu chứa

Bảng sau đây cho thấy các bộ lọc vệ sinh khác nhau có sẵn

PHP Sanitation FiltersFilterDescriptionfilter_id()6Xóa các ký tự không hợp lệ khỏi địa chỉ emailfilter_id()7Mã hóa các ký tự đặc biệt trong chuỗifilter_id()8Áp dụng hàm filter_id()9filter_input()0Xóa tất cả các ký tự, ngoại trừ chữ số, +, –, và filter_input()1filter_input()2Xóa tất cả các ký tự ngoại trừ chữ số và + hoặc –filter_input()3Xóa mọi ký tự đặc biệt trong chuỗifilter_input()4Tương tự như filter_input()5filter_input()6Xóa tất cả các ký tự trừ chữ số và + hoặc –filter_input()3Xóa mọi ký tự đặc biệt trong chuỗifilter_input()4Tương tự như filter_input()5filter_input()6Xóa các thẻ HTML và thẻ đặc biệt

filter_input_array()0

filter_input_array()1 filter_input_array()2

filter_input_array()3

filter_input_array()4

filter_input_array()5

filter_input_array()6

Sử dụng các hàm bộ lọc PHP sẽ giúp bạn xử lý an toàn bất kỳ loại dữ liệu đầu vào nào nhận được trong biểu mẫu HTML ứng dụng của bạn

Bộ lọc PHP là một tiện ích mở rộng lọc dữ liệu bằng cách vệ sinh hoặc xác thực dữ liệu đó. Nó đóng một vai trò quan trọng trong bảo mật của 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, chẳng hạn như đầu vào do người dùng cung cấp. Ví dụ: dữ liệu từ biểu mẫu HTML

Chủ yếu có hai loại bộ lọc được liệt kê bên dưới

  • Thẩm định. đượ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ụ: việc chuyển vào FILTER_VALIDATE_URL sẽ xác định xem dữ liệu có phải là một url hợp lệ hay không nhưng bản thân nó sẽ không thay đổi dữ liệu hiện có
  • vệ sinh. không giống như xác thực, làm sạch 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 vào FILTER_SANITIZE_EMAIL sẽ xóa tất cả các ký tự không phù hợp để chứa địa chỉ email. Điều đó nói rằng, nó không xác nhận dữ liệu

ví dụ 1. Chương trình PHP để xác thực URL bằng bộ lọc FILTER_VALIDATE_URL




filter_input_array()7

filter_input_array()8

filter_input_array()9

filter_list()0

filter_list()1 filter_list()2____43filter_list()4

filter_input_array()9

filter_list()6

filter_input_array()80 filter_input_array()81____41filter_input_array()83

filter_input_array()84filter_input_array()85______386filter_input_array()87filter_input_array()88

filter_input_array()89

filter_input_array()90 filter_input_array()91

filter_input_array()84filter_input_array()85______386filter_input_array()95filter_input_array()88

filter_input_array()97

filter_input_array()9

filter_input_array()99

ví dụ 2. Chương trình PHP để xác thực email bằng bộ lọc FILTER_VALIDATE_EMAIL




filter_input_array()7

filter_list()01

filter_input_array()9

filter_list()03

filter_list()04 filter_list()2____406filter_list()4

filter_input_array()9

filter_list()09

filter_input_array()80 filter_input_array()81____404filter_list()13

filter_input_array()84filter_input_array()85 filter_list()16filter_list()4

filter_input_array()89

filter_input_array()90 filter_input_array()91

filter_input_array()84filter_input_array()85 filter_list()23filter_list()4

filter_input_array()97

filter_input_array()9

filter_input_array()99

Chức năng lọc. 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

  • bộ lọc_var(). Lọc một biến cụ thể
  • filter_var_array(). Lọc nhiều biến i. e. mảng biến
  • bộ lọc_has_var(). Kiểm tra xem biến của 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 đã chỉ định
  • filter_list(). Trả về danh sách tên bộ lọc được hỗ trợ ở dạng mảng
  • bộ lọc_input(). Nhận một biến bên ngoài và lọc nó nếu được đặt để làm như vậy
  • filter_input_array(). giống như filter_input() nhưng ở đây Nhận nhiều biến i. e. mảng biến và lọc chúng nếu được đặt để làm như vậy

Hằng số bộ lọc được xác định trước. Có nhiều hằng số bộ lọc được xác định trước được liệt kê bên dưới

  • Xác thực hằng số bộ lọc
    • FILTER_VALIDATE_BOOLEAN. Xác thực một 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 một địa chỉ IP
    • FILTER_VALIDATE_EMAIL. Xác thực một địa chỉ e-mail
    • FILTER_VALIDATE_URL. Xác thực một URL
  • Vệ sinh hằng số bộ lọc
    • FILTER_SANITIZE_EMAIL. Loại bỏ tất cả các ký tự không hợp lệ từ một địa chỉ e-mail
    • FILTER_SANITIZE_ENCODED. Xóa/Mã hóa các ký tự đặc biệt
    • FILTER_SANITIZE_MAGIC_QUOTES. Áp dụng hàm addlashes()
    • FILTER_SANITIZE_NUMBER_FLOAT. Xóa tất cả các ký tự, trừ chữ số, +- và tùy chọn. , eE
    • FILTER_SANITIZE_NUMBER_INT. Xóa tất cả các ký tự ngoại trừ chữ số và + –
    • FILTER_SANITIZE_SPECIAL_CHARS. Loại bỏ các ký tự đặc biệt
    • FILTER_SANITIZE_FULL_SPECIAL_CHARS Có thể tắt trích dẫn 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ả các ký tự không hợp lệ khỏi URL của s
  • Các hằng số bộ lọc khác
    • FILTER_UNSAFE_RAW. Không làm gì cả, tùy ý tách/mã hóa các ký tự đặc biệt
    • FILTER_CALLBACK. Gọi hàm do người dùng định nghĩa để lọc dữ liệu

Ghi chú. Các bộ lọc PHP được bật theo mặc định trong PHP 5. 2. 0 và các phiên bản mới hơn. Yêu cầu cài đặt cho các phiên bản cũ hơn

Các loại bộ lọc trong PHP là gì?

Các loại bộ lọc ¶ .
Xác thực bộ lọc
Vệ sinh bộ lọc
bộ lọc khác
Lọc cờ

Có bao nhiêu bộ lọc trong PHP?

hai loại lọc chính . xác nhận và vệ sinh.

Bộ lọc mảng PHP là gì?

Hàm array_filter() lọc các giá trị của một mảng bằng hàm gọi lại . Hàm này chuyển từng giá trị của mảng đầu vào cho hàm gọi lại. Nếu hàm gọi lại trả về true, giá trị hiện tại từ đầu vào được trả về mảng kết quả.

Vệ sinh PHP là gì?

Làm sạch dữ liệu có nghĩa là xóa mọi ký tự không hợp lệ khỏi dữ liệu . Vệ sinh đầu vào của người dùng là một trong những nhiệm vụ phổ biến nhất trong ứng dụng web. Để thực hiện nhiệm vụ này dễ dàng hơn, PHP cung cấp tiện ích mở rộng bộ lọc gốc mà bạn có thể sử dụng để làm sạch dữ liệu như địa chỉ e-mail, URL, địa chỉ IP, v.v.