تابع strlen و دو برابر نشلن دادن کاراکترهای فارسی

bono056

Member
سلام
تابع strlen طول یه کلمه n حرفی فارس رو 2n نشون میده که ظاهرا مربوط به unicode بودن کاراکترهاست. تابع دیگه ای هست که این مشکل و نداشته باشه؟
 

bono056

Member
من این تابع رو هم پیدا کردم که جواب میده:
کد:
function utf8_strlen($s) {
    $c = strlen($s); $l = 0;
    for ($i = 0; $i < $c; ++$i) if ((ord($s[$i]) & 0xC0) != 0x80) ++$l;
    return $l;
}
 

جدیدترین ارسال ها

بالا