Skip to content
Home / PHP / PHP slugify

PHP slugify

Simple snippet for slug creation, useful for URL-s. Based on this gist.

     /**
     * @param string $string
     * @return string
     */
    public function slugify(string $string): string
    {
        $string = preg_replace('~[^\pL\d]+~u', '-', $string);
        $string = iconv('utf-8', 'us-ascii//TRANSLIT', $string);
        $string = preg_replace('~[^-\w]+~', '', $string);
        $string = trim($string, '-');
        $string = preg_replace('~-+~', '-', $string);
        $string = strtolower($string);

        if (empty($string)) {
            return '';
        }

        return $string;
    }