Fix lỗi "Function ereg() is deprecated" tại PHP 5.3

Bạn gặp những lỗi như thế này:
Deprecated: Function ereg() is deprecated in /home/VINASTAR/domains/vinastar.net/public_html/Common.php on line 366


Đây là thông báo hoặc phản đối khi code của bạn chạy trên server có PHP 5.3.xx. Ở bài viết này là chức năng ereg, đã không được hỗ trợ tại PHP 5.3.xx. Chức năng này được đánh giá là chậm và không quen thuộc bằng chức năng preg.

Cách xử lý như sau, bạn hãy mở file lỗi ra:
Chỉnh sửa (thay đổi) ereg():
ereg('\.([^\.]*$)', $this->file_src_name, $extension);

trở thành
preg_match('/\.([^\.]*$)/', $this->file_src_name, $extension);

Hãy nhớ rằng (\.([^\.]*$)) được thêm / /, đây là biểu thức chính quy ký tự phân cách. Nếu bạn thấy có quá nhiều dấu / (ví dụ 1 URL), bạn có thể sử dụng dấu # thay thế cho dấu /.

Chỉnh sửa (thay đổi) ereg():
$this->file_dst_name_body = ereg_replace('[^A-Za-z0-9_]', '', $this->file_dst_name_body);

trở thành

$this->file_dst_name_body = preg_replace('/[^A-Za-z0-9_]/', '', $this->file_dst_name_body);

Hãy nhớ là có thêm biểu thức chính quy ký tự phân cách 
Bạn hãy đọc thêm về preg_match, ví dụ như thêm ký tự i để nhận giá trị đúng nhất ( trường hợp lọc 1 từ hay đoạn từ chính xác nhưng không phân biệt chữ hoa và chữ thường).
eregi('\.([^\.]*$)', $this->file_src_name, $extension);

trở thành 
preg_match('/\.([^\.]*$)/i', $this->file_src_name, $extension);

Chúc bạn thành công.
這篇文章有幫助嗎? 0 Users Found This Useful (4 Votes)