Đào tạo Tin học trực tuyến

Chuyển đổi chuỗi tiếng Việt có dấu thành không dấu theo chuẩn SEO trong PHP


Trong lập trình PHP việc chuyển đổi chuỗi có dấu thành không dấu giữ vai trò đặc biệt quan trọng trong việc bảo mật Website cũng như xây dựng Website theo chuẩn SEO. Thông thường, khi các bạn vào một website nào đó sẽ thấy các dòng Title của bài viết trở thành đường dẫn URL trên trang Website.

Ví dụ như Website của tôi, với Tiêu đề là "Giải pháp sử dụng icon cho thiết kế trình chiếu với PowerPoint và thiết kế đồ họa", bạn sẽ thấy đường dẫn trên trình duyệt sẽ là: "http://dothanhspyb.com/news/5939-giai-phap-su-dung-icon-cho-thiet-ke-trinh-chieu-voi-powerpoint-va-thiet-ke-do-hoa.html". Để thực hiện công việc này, các bạn xây dựng một hàm như sau:

public function changeTitle($str){
  if(!$str) return false;
  $unicode = array(
        'a'=>'á|à|ả|ã|ạ|ă|ắ|ằ|ẳ|ẵ|ặ|â|ấ|ầ|ẩ|ẫ|ậ',
        'A'=>'Á|À|Ả|Ã|Ạ|Ă|Ắ|Ằ|Ẳ|Ẵ|Ặ|Â|Ấ|Ầ|Ẩ|Ẫ|Ậ',
        'd'=>'đ',
        'D'=>'Đ',
        'e'=>'é|è|ẻ|ẽ|ẹ|ê|ế|ề|ể|ễ|ệ',
        'E'=>'É|È|Ẻ|Ẽ|Ẹ|Ê|Ế|Ề|Ể|Ễ|Ệ',
        'i'=>'í|ì|ỉ|ĩ|ị',
        'I'=>'Í|Ì|Ỉ|Ĩ|Ị',
        'o'=>'ó|ò|ỏ|õ|ọ|ô|ố|ồ|ổ|ỗ|ộ|ơ|ớ|ờ|ở|ỡ|ợ',
        'O'=>'Ó|Ò|Ỏ|Õ|Ọ|Ô|Ố|Ồ|Ổ|Ỗ|Ộ|Ơ|Ớ|Ờ|Ở|Ỡ|Ợ',
        'u'=>'ú|ù|ủ|ũ|ụ|ư|ứ|ừ|ử|ữ|ự',
        'U'=>'Ú|Ù|Ủ|Ũ|Ụ|Ư|Ứ|Ừ|Ử|Ữ|Ự',
        'y'=>'ý|ỳ|ỷ|ỹ|ỵ',
        'Y'=>'Ý|Ỳ|Ỷ|Ỹ|Ỵ',
        '' =>'?|(|)|[|]|{|}|#|%|-|–|<|>|,|:|;|.|&|"|“|”|/',
        '-'=>' '
  );
  foreach($unicode as $khongdau=>$codau) {
     $arr=explode("|",$codau);
     $str = str_replace($arr,$khongdau,$str);
  }
  return $str;
}

Khi cần chuyển đổi các bạn chỉ cần sử dụng một biến để lấy dữ liệu không dấu của tiêu đề:

$tieude = changeTitle("Tiêu đề tiếng Việt có dấu");

 Kết quả nhận được sẽ là: "Tieu-de-tieng-Viet-co-dau".

Chúc các bạn thành công!


Xem thêm

   Có gì khác biệt giữa HTML và HTML5?

   5 yếu tố quan trọng của định hướng thị giác trong thiết kế web

   Một số thẻ và Type quan trọng với HTML5 cần chú ý trong quá trình thiết kế website

   Xử lý text với Typography trong Bootstrap 4 CSS FrameWork

   Bootstrap 4.0: Bài 2. Thiết lập hệ thống lưới Grid System

   Bootstrap 4.0: Bài 1. Giới thiệu và các thiết lập cơ bản về công cụ, css, javascript

   Laravel 5.6: Thiết kế trang đăng ký người dùng

   Laravel 5.6: Bổ sung thêm cơ sở dữ liệu cho website

   Màu nền và màu chữ trong Bootstrap 4 CSS Framework

   Laravel 5.6: Validated, xử lý hệ thống đăng nhập, đăng xuất, ghi nhớ đăng nhập

   Laravel 5.6: Thiết kế trang đăng nhập hệ thống quản trị Login

   Laravel 5.6 : Xây dựng hệ thống Models

   Hướng dẫn cài đặt Opencart - CMS hệ thống bán hàng trực tuyến