0

次の関数でその URL セーフを試してみましたが、アラビア語では機能しません。どうすれば修正できますか?

デモはこちら

<?php
    function stringURLSafe($string)
{
    // remove any '-' from the string since they will be used as concatenaters
    $str = str_replace('-', ' ', $string);


    // Trim white spaces at beginning and end of alias and make lowercase
    $str = trim(strtolower($str));

    // Remove any duplicate whitespace, and ensure all characters are alphanumeric
    $str = preg_replace('/(\s|[^A-Za-z0-9\-])+/', '-', $str);

    // Trim dashes at beginning and end of alias
    $str = trim($str, '-');

    return $str;
}
echo stringURLSafe('موقع إخباري: مرتبط بقناة {العربية} يقدم (على) مدار');

次のように出力したい:

موقع-إخباري-مرتبط-بقناة-العربية-يقدم-على-مدار
4

1 に答える 1

0

正規表現を次のように変更します。
$str = preg_replace('/(\s|[^\p{Arabic}\w0-9\-])+/u', '-', $str);
結果は次
のとおりです。

于 2013-01-14T09:54:18.677 に答える