0

我需要从 twitter 趋势中删除特殊字符。因为趋势是用来形成 url 之类的http://example.com/trends/trending-topic

如果有像Gävle这样的特殊字符,它会形成丑陋的 url。我怎样才能删除这些字符。趋势中是否有任何允许的字符列表?

4

1 回答 1

0

这是一把双刃剑。

您可以使用iconv()//TRANSLIT//IGNORE功能尝试将 UTF-8 字符串转换为较小的字符集,例如 US-ASCII。该//TRANSLIT标志将转换任何可以转换为目标字符集中有意义的字符。 //IGNORE当音译或原始编码出现错误时,将阻止 iconv 停止。

请注意,无法音译的字符将被删除。您的目标字符集越能表示来自源的字符越好。例如,许多欧洲语言可以毫无问题地转写为 US-ASCII,但尝试移植像西里尔文或来自亚洲大陆的东西将是一场灾难。这就是双刃剑的用武之地。在 URL 中编码 UTF 可能在视觉上很难看,但从长远来看,这是最有可能解决的问题。

于 2012-12-14T04:25:43.903 回答