Mô-đun mbstring PHP có cài đặt strict_detection
, documented here. Thật không may, hướng dẫn sử dụng là hoàn toàn vô dụng; nó chỉ nói rằng tùy chọn này "cho phép phát hiện mã hóa nghiêm ngặt".mbstring.strict_detection làm gì?
Tôi đã thực hiện một vài thử nghiệm và không thể tìm thấy bất kỳ chức năng mbstring nào bị ảnh hưởng bởi điều này. mb_check_encoding()
và mb_detect_encoding()
cho kết quả chính xác cho cả đầu vào UTF-8 hợp lệ và không hợp lệ.
(chỉnh sửa :) Tùy chọn mbstring.strict_detection
đã được thêm vào trong PHP 5.1.2.
Đúng vậy, nhưng cài đặt của 'mbstring.strict_detection' không ảnh hưởng đến hành vi đó (thậm chí không phải giá trị mặc định của tham số $ strict). – Zilk
Nó hoạt động cho tôi. Với 'mbstring.strict_detection = On', giá trị mặc định cho tham số * strict * là đúng. Lưu ý rằng điều này chỉ có sẵn kể từ PHP 5.1.2. –
Ah, bạn nói đúng, nó * có * ảnh hưởng đến 'mb_detect_encoding()' nếu tham số thứ ba bị thiếu. Tôi đã gặp lỗi trong các bài kiểm tra của mình; chỉ 'mb_check_encoding()' và 'mb_convert_encoding()' không bị ảnh hưởng. Cảm ơn bạn. – Zilk