1

、、、を、、に変換するのに問題がæあります。øåaeoeaa

この関数を使用してseoに適したURLを作成しようとしていますが、æøå標識が削除されるだけです。

私の機能は次のとおりです。

function seo_friendly_url($string, $cid) {
    //Unwanted:  {UPPERCASE} ; / ? : @ & = + $ , . ! ~ * ' ( )
    $string = strtolower($string);
    //Convert ÆØÅ
    $string = str_replace(chr(230), 'ae', $string); 
    $string = str_replace(chr(248), 'oe', $string); 
    $string = str_replace(chr(229), 'aa', $string); 
    //Strip any unwanted characters
    $string = preg_replace("/[^a-z0-9_\s-]/", "", $string);
    //Clean multiple dashes or whitespaces
    $string = preg_replace("/[\s-]+/", " ", $string);
    //Convert whitespaces and underscore to dash
    $string = preg_replace("/[\s_]/", "-", $string);
    return $string;
}

誰かがこの問題を解決する方法について何かアイデアを持っていますか?私はウェブ上で見つけた多くの違いを試しましたが、何も機能していないようです。

4

1 に答える 1

1

この man ページのコメントを見てください: http://php.net/manual/en/function.urlencode.php

おそらく次のようなものです:

function seo_friendly_url($url) {
    $url = strtolower($url);
    $url=str_replace('æ','ae',$url);
    $url=str_replace('ø','oe',$url);
    $url=str_replace('å','aa',$url);    
    return urlencode($url);
}

やりますか?

于 2013-02-16T11:09:58.800 に答える