Tôi quen với thói quen kiểm tra loại tham số của mình khi viết các hàm. Có lý do gì để chống lại điều này không? Ví dụ, nó sẽ là thực hành tốt để giữ cho chuỗi xác minh trong mã này hoặc loại bỏ nó, và tại sao?Bạn có nên xác minh các loại tham số trong các hàm PHP không?
function rmstr($string, $remove) {
if (is_string($string) && is_string($remove)) {
return str_replace($remove, '', $string);
}
return '';
}
rmstr('some text', 'text');
Có những lúc bạn có thể mong đợi các loại thông số khác nhau và chạy đoạn mã khác nhau cho họ, trong trường hợp này việc xác minh là điều cần thiết, nhưng câu hỏi của tôi là nếu chúng ta nên kiểm tra rõ ràng cho một loại và tránh lỗi.
Quá nhiều trừ khi bạn đang tạo thư viện API hoặc xử lý dữ liệu nhập từ người dùng. – thedaian
Tôi cho rằng sẽ có sự sụt giảm dần hiệu suất nếu mọi chức năng bạn viết đã thực hiện điều này, đặc biệt nếu chúng là các hàm nội bộ/riêng tư mà chỉ bạn gọi. –
Tôi đoán nó phụ thuộc vào những gì sẽ xảy ra nếu bạn không có thử nghiệm của bạn và nó không thành công. – Steve