Giáo trình PHP căn bản - Lọc dữ liệu với PHP Filter (CH003 Bài 5)
Để tìm hiểu kỹ hơn các bạn hãy truy cập:
Website: www.zend.vn
Facebook: facebook.com/zendvngroup
2. Vấn đề 01: PHP Filter là gì ?
• PHP Filter (phiên bản 5.2.0) kiểm tra nguồn dữ liệu trước khi thực hiện một vấn
đề gì đó. Thuật ngữ này trong lập trình thường gọi là validate và filter
• Validate: dùng để xác nhận hoặc kiểm tra xem dữ liệu có đáp ứng đủ điều kiện
yêu cầu hay không ?
• Filter: dùng để lọc các dữ liệu đưa vào không phù hợp với yêu cầu và trả về một
kết quả đúng với dữ liệu yêu cầu.
3. Vấn đề 02: Sử dụng Filter để kiểm tra dữ liệu
• Sử dụng hàm filter_var($variable, $filter, $option) để kiểm tra biến $variable với điều
kiện đưa vào, biến $filter thường mang các giá trị
o FILTER_VALIDATE_BOOLEAN
o FILTER_VALIDATE_EMAIL
o FILTER_VALIDATE_FLOAT
o FILTER_VALIDATE_IP
o FILTER_VALIDATE_URL
o …
4. Vấn đề 03: Tự định nghĩa và gọi hàm trong PHP Filter
• Sử dụng hàm filter_var($variable, FILTER_CALLBACK, array(‘options’=>‘myFunc’) ) để
kiểm tra biến $variable với hàm myFunc();
5. Vấn đề 04: Sử dụng RE trong PHP Filter
• Sử dụng hàm filter_var($variable, FILTER_VALIDATE_REGEXP, $option) để kết hợp
thêm RE trong filter
• Thực hiện các yêu cầu sau:
o Kiểm tra số điện thoại với định dạng sau 084-08-38.212121
o Kiểm tra phần mở rộng của FILE có phải là .jpg .gif .png
o Kiểm tra giá trị nhập vào có phải là số và chữ hay không
6. Vấn đề 05: Sử dụng hàm filter_var_array()
• Sử dụng hàm filter_var_array() để kiểm tra, lọc cùng lúc nhiều giá trị
7. Vấn đề 06: Tìm hiểu hàm filter_input()
• Hàm filter_input(input_type, variable, filter, options) được sử dụng để kiểm tra
các giá trị từ FORM. Chức năng này cũng có thể lấy được dữ liệu từ các trường
hợp khác như $_GET, $_POST, $_COOKIE, $_ENV, $_SERVER
o input_type: kiểu lấy dữ liệu (INPUT_GET, INPUT_POST, INPUT_COOKIE, … )
o variable: tên của phần tử bạn muốn lấy dữ liệu
o filter: kiểu filter
o options: mảng tham số
8. Vấn đề 07: Tìm hiểu hàm filter_input_array()
• Tương tự hàm filter_input tuy nhiên hàm filter_input_array() cho phép thực hiện việc
validate và filter cùng lúc trên nhiều giá trị khác nhau