Thủ thuật PHP : Chuyển đổi tiếng việt có dấu thành không dấu

06/06/2012

Có rất nhiều cách để chuyển đổi tiếng việt từ có dấu sang không dấu, thông thường bạn hay tạo 1 hàm (function) sử lý bằng str_replace, tuy nhiên bạn hoàn toàn có thể đơn giản hóa bằng hàm preg_replace

chuyen tieng viet co dau thanh khong dau

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php function convert_vi_to_en($str) {
  $str = preg_replace(“/(à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ)/”, ‘a’, $str);
  $str = preg_replace(“/(è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ)/”, ‘e’, $str);
  $str = preg_replace(“/(ì|í|ị|ỉ|ĩ)/”, ‘i’, $str);
  $str = preg_replace(“/(ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ)/”, ‘o’, $str);
  $str = preg_replace(“/(ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ)/”, ‘u’, $str);
  $str = preg_replace(“/(ỳ|ý|ỵ|ỷ|ỹ)/”, ‘y’, $str);
  $str = preg_replace(“/(đ)/”, ‘d’, $str);
  $str = preg_replace(“/(À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ)/”, ‘A’, $str);
  $str = preg_replace(“/(È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ)/”, ‘E’, $str);
  $str = preg_replace(“/(Ì|Í|Ị|Ỉ|Ĩ)/”, ‘I’, $str);
  $str = preg_replace(“/(Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ)/”, ‘O’, $str);
  $str = preg_replace(“/(Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ)/”, ‘U’, $str);
  $str = preg_replace(“/(Ỳ|Ý|Ỵ|Ỷ|Ỹ)/”, ‘Y’, $str);
  $str = preg_replace(“/(Đ)/”, ‘D’, $str);
  //$str = str_replace(” “, “-”, str_replace(“&*#39;”,”",$str));
  return $str;
  }?>

Rất đơn giản phải không các ban.Chúc các bạn thành công !

Chuyên Mục:

Bài viết được đăng bởi webmaster

Nếu các bạn thấy bài viết hữu ích thì giúp mình Like cái nhé !