首頁 >後端開發 >php教程 >如何在 PHP 中從 Unicode 字串高效建立 Slug?

如何在 PHP 中從 Unicode 字串高效建立 Slug?

Susan Sarandon
Susan Sarandon原創
2024-12-09 10:02:07787瀏覽

How to Efficiently Create Slugs from Unicode Strings in PHP?

在PHP 中為Unicode 字串建立slugs

使用Unicode 字串時,有必要建立slugs,它們是URL 友善的字元串代表原始內容。此過程涉及音譯、刪除不需要的字元以及將字串轉換為小寫。

實作 slugify 函數

要在 PHP 中建立 slugify 函數,請遵循以下方法:

public static function slugify($text, string $divider = '-')
{
  // replace non letter or digits by divider
  $text = preg_replace('~[^\pL\d]+~u', $divider, $text);

  // transliterate
  $text = iconv('utf-8', 'us-ascii//TRANSLIT', $text);

  // remove unwanted characters
  $text = preg_replace('~[^-\w]+~', '', $text);

  // trim
  $text = trim($text, $divider);

  // remove duplicate divider
  $text = preg_replace('~-+~', $divider, $text);

  // lowercase
  $text = strtolower($text);

  if (empty($text)) {
    return 'n-a';
  }

  return $text;
}

範例用法

要使用此函數,只需如下呼叫即可:

$slug = slugify('Andrés Cortez');
echo $slug; // andres-cortez

這提供了一種更有效率、更簡潔的方法來從Unicode 字串建立slugs,無需冗長的替換品。

以上是如何在 PHP 中從 Unicode 字串高效建立 Slug?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn