5

重複の可能性:
PHPのURLフレンドリーなユーザー名?

私はこのようなものを持っています:

'mrt1' => 'Zhongxiao Dunhua Sun'

これは、次のようなアンカーリンクに含まれます。

<a href="'. $mrt1 .'">'. $mrt1 .'</a>

出力を次のようにします。

<a href="zhongxiao-dunhua-sun">Zhongxiao Dunhua Sun</a>

その名前をURLに適した文字列に変換できるようにするにはどうすればよいですか(href属性に配置できるように)?

4

4 に答える 4

12
$s = ' Zhongxiao Dunhua Sun ';
$r = preg_replace('/\W+/', '-', strtolower(trim($s)));
echo("$r\n");
于 2012-12-13T05:18:18.857 に答える
3

PHPには、文字列をURL標準に準拠させるための関数があります。

urlencode($mrt1);
于 2012-12-13T05:22:17.020 に答える
2

この機能も試してみてください。

function create_seo_link($text) {
    $letters = array(
        '–', '—', '"', '"', '"', '\'', '\'', '\'',
        '«', '»', '&', '÷', '>',    '<', '$', '/'
    );

    $text = str_replace($letters, " ", $text);
    $text = str_replace("&", "and", $text);
    $text = str_replace("?", "", $text);
    $text = strtolower(str_replace(" ", "-", $text));

    return ($text);
}
于 2012-12-13T05:26:40.990 に答える
1

str_replace()はスペースをに変更し-strtolower()は小文字に変更します。

$mrt1 = 'Zhongxiao Dunhua Sun';
$mrt1 = str_replace(' ','-',strtolower($mrt1));
于 2012-12-13T05:18:40.977 に答える