SQL sercure, sử dụng addslashes hay var_export


Trong quá trình sử dụng PHP, để đảm bảo an toàn cho một câu truy vấn SQL (hay còn gọi là chống injection), ta thường sử dụng các hàm để đảm bảo các kí tự đặc biệt được sử dụng “đúng mục đích” của nó.

Trong đó phổ thông nhất và đơn giản nhất là sử dụng hàm addslashes của PHP.

Ngoài ra, trong quá trình tìm hiều, tôi cũng thấy rằng, var_export cũng là giải pháp hữu hiệu để tạo một chuỗi sql secure.

Tất nhiên, var_export thì sẽ tốn nhiều thời gian xử lí hơn, nhưng lại đơn giản hơn khi viết mã.

Tôi đã test thử mới 1 triệu vòng lặp với addslashes và var_export với chuỗi ‘schools\’ subjects

addslashes tốn 1.07 giây

var_export tốn 2.03 giây (gấp đôi)

Var_export viết mã đẹp hơn nhiều: thay vì viết

$string = ‘\”.addslashes($value).’\”;

bạn chỉ cần viết

$string = var_export($value);

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s