0

SEO の目的で、ユーザーが提供するコンテンツを URL に入れています。このコードを使用してクリーンアップします。

/**
* Create URL friendly strings or filenames
* @param type $str
* @param type $replace
* @param type $delimiter
* @return type
*/
public static 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;
}

しかし、それだけでは不十分であることがわかりました。いくつかのヘブライ文字を含む記事から、次のことがわかりました。

iconv(): 入力文字列に不正な文字が検出されました

文字列をきれいな URL に安全に変換する特効薬関数はありますか? 少なくとも私はそれがクラッシュしないことを望みます。次に、URL が引き続き見栄えがよく、SEO に適しているとよいでしょう。

今日はヘブライ語でしたが、明日はロシア語、中国語、クリンゴン語になるかもしれません...

4

0 に答える 0