将商标等符号转换为字母数字字符串

convert sign like trademark to alphanumeric string

在 magento 升级过程中,一些产品 urls 已更改为产品名称中的内容,例如,我试图检测那些具有 magento 将其转换为通常的商标的产品 url钥匙,

例如产品名称是:

strikeline™-rugged-led

和URL变成了:

strikelinetm-rugged-led

有没有把商标等unicode符号转换成英文字母的功能?我需要它来检测更改的某些部分 urls.I 不太了解 UTF8 但通过使用

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

我能够看到格式良好的商标,现在我需要将 ™ 转换为 tm ,我还有其他标志,这只是为了澄清。

我不久前发现了这段代码 (http://cubiq.org/the-perfect-php-clean-url-generator)

<?php

setlocale(LC_ALL, 'en_US.UTF8');
function toAscii($str, $replace=array(), $delimiter='-') {
    if( !empty($replace) ) {
        $str = str_replace((array)$replace, ' ', $str);
    }

    $clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str);
    $clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $clean);
    $clean = strtolower(trim($clean, '-'));
    $clean = preg_replace("/[\/_|+ -]+/", $delimiter, $clean);

    return $clean;
}

echo toAscii('strikeline™ rugged led');


?>